Turbo C dili ile sayıyı basamaklarına nasıl ayırabiliriz, kafayı yemek üzereyim lütgen bilen ustalar bi yardımcı olabilirmisiniz ? |
Lütfen cevabı biliyorsan yardım et. |
@ebubekir.s " için gerekli tanımlamayı bulamadım. Onun için VK_OEM_7 yazılmış dökümanda ama bu da US klavyeler için geçerli. Bizim klavyelerde i olarak geçiyor. Bende nokta ve virgüle ayarladım. Ayrıca bu kod sadece windowsta çalışır maalesef. Eğer crossplatform istersen glfw, sdl2 gibi kütüphaneler var bunların sadece input fonksiyonlarını kullanabilirsin. Virtual Key Codes(Windows)
|
peki çok teşekkür ederim. |
Merhaba arkadaşlar C++ da eksiğim olduğu için buraya sorayım dedım. ve okulda hocamız bize bir ödev verdi. Bir ögrenciye ait; adı,soyadı,doğum günü(gun ay yıl) bilgilerinin tutulması istenmektedır. Bu bılgılerı içerebilen bırer sınıf tasarlayınız. Ornek olarak, bır ögrencının bılgılerını baslangıc deger olarak kabul edecek bır nesne olusturun . daha sonra bu sınıf ıcerısınde öyle bır fonkısyon ekleyınız ki bu bılgılerı ekrana yazdırsın. bu fonksıyonu kullanarak ornek olarak olusturdugunuz nesne içerisnde ögrencıye aıt bılgılerı ekrana yazdırsın. Bana yardımcı olursanız cok sevinirim |
Arkadaşlar proğram güzel çalışıyor ama en sonunda bir bütün olarak 2 katını almasını istiyorum...nasıl yapabilirim? /manyak bir hocanın ödevi/ #include<stdio.h> |
@Saintvictims Oluşturacağın basit bir sınıf örneği bu. Eğer burada takılıyorsan baştan notlarını incelemen lazım.
@ahmet_k06 Hiç soru üzerinde düşünmeden direk buraya yazıyorsun herhalde. Sayıları bir bütüm olarak nasıl 2 ile çarparsın? İlk önce sayıları toplarsın sonra topladığın sayıyı 2 ile çarpsın. Kodda ilk önce yapman gereken for döngüsünden önce c = 0 yazmak olmalıdır. Sonra for içinde b=a-'0'; deyiminden sonra c += b yazacaksın. Böylece sorunun ilk aşaması olan sayıların toplanması kısmını halletmiş oldun. Sonraki aşamada ise for döngüsünden çıktıktan sonra c *= 2; yapacaksın böylecede sayıların toplanmış halini 2 ile çarptın. c'i ekrana yazdırdıktan sonra işlem bitiyor. Yapacağın işlem bu kadardı. |
tam senin dediğin gibi yaptım ama olmadı..... #include<stdio.h> |
@ahmet_k06 Bir bütün olarak 2 katını biraz açar mısın? Sen 123 girdin diyelim. 1 + 2 + 3 = 6 'nın 2 katı olacak. Yoksa 123 * 2 = 246 mı olacak? Ayrıca döngüleri a != '\0' olarak kullanma. İlk dediğim şeklin kodu aşağıdaki gibi.
İkinci dediğimin ise kodu:
ceil kullanmazsam 10^2'i 99 olarak gösteriyordu :s |
merhaba arkadaşlar. Aşağıda yazmış olduğum bu program, girmek istediğiniz kadar sayıların tek veya çift olanlarının ortalamasını almakta fakat eğer sadece çift veya tek girerseniz hata veriyor. yardımcı olur musunuz? Teşekkürler. #include<iostream> #include<conio.h> using namespace std; int main() { int n, number, i = 1; int sum_even = 0, sum_odd = 0; int sum; long double nodd = 0, neven = 0; double aodd, aeven; cin >> n; for (i = 1; i <= n; i++) { cin >> number; if (number % 2 == 0) { neven++; sum_even += number; } else { nodd++; sum_odd += number; } } aodd = sum_odd / nodd ; aeven = sum_even / neven; cout << aodd << " " << aeven; getch (); return 0; } |
@alikemalozgumus Aldığın hata nedir? Bende hata vermedi. Ama kodda mantıksal bir hatan var. Sadece tek veya çift girdiğin zaman nodd veya neven değişkenlerinden biri 0 oluyor. Böyle oluncuda aodd = sum_odd / nodd ; aeven = sum_even / neven; kısmında bir sayıyı 0'a bölmeye çalışıyorsun. Aldığın bundan kaynaklı olabilir. Basit if ifadeleri ile bu sorunu çözebilirsin. |
-1.#ind hatası veriyor. teşekkür ederim yardımın için biliyorum 0'a bölündüğü için hata verdiğini ama çözemiyorum daha yeni başladım bu programı kullanmaya |
if(nodd != 0) { aodd = sum_odd / nodd ; cout << aodd << " "; } if(neven != 0) { aeven = sum_even / neven; cout << aeven; } |
Arkadaşlar bana bir fikir verebilir misiniz ?sizden sadece bir fikir istiyorum . ödevi yaptırma gibi niyetim yok. Bu soruyu return 'le mi yapacağız ?(return hakkında bir bilgim yok.ipucu verebilirmisiniz ?) yoksa if else yapısıyla da yapabilirmiyim ? (if else hakkında bilgim var) Bir fonksiyon yazın. bu fonksiyon girilen değerin büyük harf olup olmadığını kontrol etsin. büyük harf ise sıfırdan farklı bir değere dönsün. eğer küçük harf ise sıfıra gitsin. örnek eğer değer A ise fonksiyon 1 'e dönsün int BüyükHarfmi (char değer) { |
--“Enter” tuşuna basılana kadar klavyeden girilen karakterlerin her birinden kaç tane kullanıldığını, toplam kaç karakter girildiğini veren bir programın çözümü için Gerekli sözde kodu ve akış diyagramını gerçekleştiriniz. Ödev bu arkadaşlar.Yardımlarınızı bekliyorum... Not: C de yazılması gerekiyor. Paylaş |
Fonksiyon için çeşitli fikirler verebilirim. En pratiği ASCII tablosunu kullanmak olacaktır. Atıyorum büyük harflerin ASCII değeri 0-26 arasındaysa ve küçüklerin 27-52 arasındaysa girilen karakteri ASCII değerine çevirip hangi aralıkta olduğuna bakılabilir. fn. büyük mü küçük mü char girdisi charı ASCII çevir eğer(if) aralık 0-26 ise büyük, değilse veya 27-52 ise küçüktür. Şimdi return(geri dönüş) değeri için. eğer 0-26 ise return 1; değilse(else return 0); Hangi dili kullandığınızı bilmediğim için return değeri hakkında detaylı bilgi vermedim. Geri dönüş değeri olarak aratırsanız birçok bilgi bulabilirsiniz. İyi çalışmalar |
Yardım ederiz, sorunuzu sorun. |
Soru yazılı bro.Kodlar lazım ve akış diyagramı ama kodları versen yeter :D |
1. asla system() fonksiyonunu kullanma, ne olursa olsun!
2. y = 0 ı başta yapmanın sebebi hafızada 0 değerini atamak. ayrıca sadece 2 ve 0 arasında değer olacağı için int kullanmak çok aptalca bir davranıştır. char y = 0; şeklinde kullanın
3. y++; yı da kullanma ++y; kullan hafızayı boşu boşuna meşgul etme.
3. x % asallik da x yani girilen sayıyı asallik a bölüp kalanı buluyor. kalan 0 ise tam bölünüyor demek. asal sayı bire ve kendisine tam bölünür sadece, bu yüzden x % asallik,asal sayılarda asallik = 1 olduğunda veya asallik = x olduğunda 0 a eşit olur yani asal sayılarda y döngüden 2 olarak çıkar. altta da y = 2 ise sayı asaldır demiş zaten.
4. kodlama tarzı berbat sadece ödevlerde böyle kodlama yap. ayrıca preprocessor constant larını header veya kod dosyasının başında #ifdef şeklinde sorgulat ve gerekirse tanımlat, bunu yapmazsan kod sadece constant lerin önceden tanımlandığı platformlarda derlenebilir.
Bu mesaja 1 cevap geldi. Cevapları Gizle