http://www.hizliresimyukle.com/image/Pefs Yukarıdaki resimde verilen çıktıyı sağlayacak programı “C” dilinde yazınız. • Sadece pozitif tek sayıları girdi olarak kabul etmeli, bu kontrolü while veya do-while ile yapmalıdır. • Üçgen içi dolu ve ters biçimde bastırılacaktır, her satırda 2 birim daralacaktır. • Girdi kontrolü haricinde (çizmek için) en fazla 2 döngü kullanılacaktır. ![]() Arkadaşlar sabahtan beri uğraşıyorum yapamadım.Yardımcı olursanız sebinirim. ![]() |
#include <stdio.h> #include <conio.h> #include <cstdlib> int main() { double x,y; printf("x degerini giriniz"); scanf("%lf",&x); printf("y degerini giriniz"); scanf("%lf",&y); if(x>0) if(y>0) printf("bir"); else if(y<0) printf("dort"); else printf("+x"); if(x==0) if(y>0) printf("+y"); else if(y<0) printf("-y"); else printf("orjin"); else if(y<0) printf("uc"); else if(y>0) printf("iki"); else printf ("-x"); getch(); system("pause"); return(0); } şu sondaki pause kodunuda netten biyerden baktım ekleyin kapanmaz falan dediler ama nafile . her kodda aynı problem . progmarmda bir sıkıntı var dicem ama yok bissürü yerden başka başka indirdim yine yemedi |
Merhaba dostum, Çalıştı bende bi sıkıntı olmadı. Devc biraz sıkıntılıydı. Bende ilk zamanlar onla çalışmıştım. Projeyi nasıl açıyosun adım adım ekran çıktısı alırsan belki orda bi hata yapıyosundur. Sanırım koordinat düzlemindeki yerlerini bulmaya çalışmışsın. if döngülerinde {} parantezlerini kullanmanı tavsiye ederim. çok karışık duruyor kodlar. |
Arkadaşlar merhaba c'ye yeni başladım ama bir sorunum var. Aşağıdaki kodu yazıp çalıştırınca sayıya ne yazarsam yazayım, çok başka bir sayı çıkıyor . Hatam nerede acaba? #include <stdio.h> int main(int argc, char *argv[]) { int a; scanf("a=%d",&a); printf("\na=%d",a); system("PAUSE"); return 0; } |
http://pastebin.com/9bW0HH9Q Yukarıdaki gibi bir şey yaptım, incele işini görürse :) |
#include <stdio.h> Arkadaşlar srand(time(0)) fonksiyonuyla ilgili aklıma takılan bir nokta var : Biz srand'I main'e koyduğumuzda srand(time(0)) bir kez işletiliyor bu nedenle programın çalıştırıldığında 8 8 8 8 8 8 8 8 8 gibi değer üretmesi gerekmez mi ? |
Arkadaşlar sorum şu olucak #include<stdio.h> #include<conio.h> int main(){ int sayi,k,c; while(1==1) { do { printf("Pozitif tek bir sayi giriniz:"); scanf("%d",&sayi); c=sayi%2; k=sayi;} while ((c==0)&&(sayi>0)); for(int j=1;j<=(sayi+1)/2;j++) { printf("\n"); int bosluk=(sayi-k)/2; while(bosluk>0) { printf(" "); bosluk--; } for(int i=1;i<=k;i++) { printf("*"); } k-=2; } printf("\n\n"); } } ------------------------------------------------------------------------------------------------ while(bosluk>0) { printf(" "); bosluk--; } for(int i=1;i<=k;i++) { printf("*"); } k-=2; } printf("\n\n"); } } üstteki kottan şu while'ın yerine nasıl 2 döngülü ve if-else kullanıabilirim??? |
Teşekkürler hocam ![]() |
#include <stdio.h> #include <conio.h> int main(){ int a,b,sonuc; char islem; printf(" '+' toplama islemi icin seciniz\n"); printf(" '-' cikarma islemi icin seciniz\n"); printf(" '*' carpma islemi icin seciniz\n"); printf(" '/' bolme islemi icin seciniz\n"); printf("secilen islem > "); scanf("%c",&islem); printf("birinci sayiyi giriniz > "); scanf("%d",&a); printf("ikinci sayiyi giriniz > "); scanf("%d",&b); switch(islem) { case '+': sonuc=a+b; break; case '-': sonuc=a-b; break; case '*': sonuc=a*b; break; case '/': sonuc=a/b; break; default: printf("gecersiz islem"); } printf("sonuc : %d",sonuc); getch(); return(0); } bu kodda ne sıkıntı varki şimdi. adım adım şöyylle yaptım c++ açtım yeni kaynnak kodu dosyası açtım yazdım . derle çalıştır yaptım derleyici açıldı değerleri giriniz seçiniz falan yapıyorum saonuc yokbi sekme aşağı alııyor bekliyor. ![]() bir tuşa basıncada kapatıyor. ptesi sınavım var ama daha doru dürüst antrenman yapamadım kafayıyemek üzereyim ![]() ![]() |
Bu kod da sorunsuz çalıştı. Visual Studio indir ordan çalış dostum. ( Ayrıca defaulta da break koymalısın, geçersiz değer girilince program patlar haberin olsun.. ) |
srand((unsigned) time(0)); rand fonksiyonu, rastgele sayı zinciri elde etmemizi saglayan fonsiyondur. rand fonksiyonunun algoritmasında rastgele sayı üretebilmek icin bir tohum degere ihtiyac vardır. eger bu tohum degeri degistirmezsek derleyicinin belirledigi default bir deger tohum degeri olrak kalacaktır.(bu tohum degeri derleyiciden derleyiciye degisiklik gosterebilir). srand fonksiyonunu degistirmek istedigimiz tohum degeriyle cagırarak, rand fonksiyonunda kullanılacak tohum degeri degistirebiliriz.srand 'ın stdlib.h baslık dosyasındaki bildirimi void srand(unsigned seed); geri donus degeri yok. argüman olarak unsigned bir deger göndermeliyiz. srand(4); tohum degerini 4 yaptık. Eger tohum degerini burdaki gibi sabit degerle degistirirsek onceki problemi asmıs sayılmayız.cunku yine rand fonksiyonu hep aynı degerleri uretecektir (tohum hep 4 cunku). bize devamlı degisen birsey lazım buda zaman. time.h baslık dosyasının icinde time() fonk. var. bu fonksiyona arguman olarak 0 "sıfır" degerini gecersek 1.1.1970 tarihinden o ana kadar gecen saniye degerini dönderir.(1.1.1970 her derleyicide bu tarih olmayabilir). böylece srand fonksiyonuna, degeri devamlı degisen bir ifadeyi göndermis oluruz. srand((unsigned) time(0)); .. muhtemelen bildigin seyleride yazmısımdır.Ama bastan almak istedim. buradan alıntıdır...! |
beyler get ve set ile ekrandan alınan 2 değeri çarpıp dikdörgenin alanı budur diye yazan bir program lazım.vizeler yaklaştı yardım ederseniz sevinirim.programın visual studiodaki çıktısını kopyala yapıştır yapsanız yeterli.normalde get set kullanıyorum ama 2 değişken almak kafamı karıştırdı birde değerler private olacak diğer türlü zaten![]() lütfeeeeeeeeeeen çok acil kafayı yiyecem monitöre kafa atacam. |
Merhaba arkadaşlar.Boyutu ve karakterler dışarıdan girilcek bir kare matris içine eşkenar dörtgen çizmeye çalışıyorum da acaba hatam nerde rica etsem bir bakabilir misiniz? #include<iostream> |
#include <stdio.h> #include <stdlib.h> int main() { int a; float b,c,d,e; int x; printf("Birakilan yuksekligi giriniz\n"); scanf("%d", &a); for(a=1; a<=5; a++) { if (a==2) b=a*(3/4); else if(a==3) c=b*(3/4); else if(a==4) d=c*(3/4); else if(a==5) e=d*(3/4); } printf("Besinci yukseklik %f \n", e); printf("Dorduncu yukseklik %f \n", d); printf("Ucuncu yukseklik %f \n", c); printf("Ikinci yukseklik %f \n",b); return 0; } Beyler bu kodda if içinde ki işlemler tapılmıyor. Sonda ki printfler sadece 0 yazdırıyor. Sorunu anlayamadım bir türlü |
@SharpShoooter teşekürler anladım. Pointerlarla alakalı kafama takılan bişey var : int y ; 3.satır neden geçersiz oluyor ? |
3. satırdaki kullanım, pointer'ın tuttuğu adresteki değeri gösteriyor ve bu değer yerine adres atamaya çalışıyorsunuz. yani cout<<*d; yazdığınız zaman, d pointerının tuttuğu adresteki değer ekrana yazdırılır. Doğru kullanım şekli d = &y; olacak. |
scanf("%d", &a); -----> Burda ekrandan 'a' için bir değer alıyosun. for(a=1; a<=5; a++) -----> Burda da 'a' yı 1 den başlatıp 1 er 1 er atlatıyosun. Ekrandan aldığın değerin bir anlamı kalmıyor yani. Orayı çözmen lazım öncelikle. |
Merhaba,
Bunun için comboboxlara SelectedIndexChanged event ini kullanman gerekiyor.
Örnek olarak;
Bu mesaja 1 cevap geldi. Cevapları Gizle