Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
4171
Cevap
168645
Tıklama
3
Öne Çıkarma
Cevap: C/C++/C# Sorularınız Buraya. . .(GÜNCEL) (42. sayfa)
B
13 yıl
Çavuş

dataGrid ile bilgisi olan yokmu gerçekten :S


Bu mesaja 1 cevap geldi.
T
13 yıl
Yüzbaşı

Belki merak eden olmuştur. Düzelttim yazdığım kodu.
Buyrun inceleyin.
 

#include <stdio.h>
#include <conio.h>


int main()
{
int a=12,b=2,c;
char x='W';
char y='Q';

do
{
printf("Islemi seciniz..: ");
x=getch();
switch (x)
{
case '+':
c=a+b;
printf("%d\n",c);
break;
case '-':
c=a-b;
printf("%d\n",c);
break;
case '*':
c=a*b;
printf("%d\n",c);
break;
case '/':
c=a/b;
printf("%d\n",c);
break;
default:
printf("Yalnis deger girdiniz..\n");

}

printf("Devam etmek istiyor musunuz? E/H\n");
y=getch();
}
while (y!='h');

}


Bu mesaja 1 cevap geldi.
C
13 yıl
Yarbay

quote:

Orijinalden alıntı: garui

quote:

Orijinalden alıntı: TeaTone

Veri yapıları sınavına girdim boş kağıt verdim. Beyler beni bu dersten geçirmeniz lazım

Ne sorular geldi de bos kagit verdin ?

Bende 15 aldim. Buyuk ihtimalle. Zaten herkes kalicak. Ben birakicam hatta. Onemli bir ders. Anlamayip gecmek sacma. Seneye geceriz haci.



< Bu ileti mobil sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.
G
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: cllyldrm


quote:

Orijinalden alıntı: garui

quote:

Orijinalden alıntı: TeaTone

Veri yapıları sınavına girdim boş kağıt verdim. Beyler beni bu dersten geçirmeniz lazım

Ne sorular geldi de bos kagit verdin ?

Bende 15 aldim. Buyuk ihtimalle. Zaten herkes kalicak. Ben birakicam hatta. Onemli bir ders. Anlamayip gecmek sacma. Seneye geceriz haci.

Kolay gelsin :)



N
13 yıl
Binbaşı

quote:

Orijinalden alıntı: MrOwl

quote:

Orijinalden alıntı: ANIL_00


quote:

Orijinalden alıntı: MrOwl

quote:

Orijinalden alıntı: ANIL_00

Arkadaşlar bana bu soru hakkında yardımcı olabilir misiniz? En azından C# kodları gerekli, yardımınız için teşekkür ederim.
< Resime gitmek için tıklayın >

Yardımcı olabilirim. Siz bir yazmaya başlayın, takıldığınız noktada yardım ederiz.

Matematik temelim iyi olmadığı için soruyu yapamıyorum, teşekkür ederim cevabınız için.

Matematik temelinizi geliştirmeniz lazım, esasında matematik temeline dayanan bir soru da değil. Şöyle yardımcı olayım.

y=x^2-2x demiş 0<=x<2 için

bunu işleme şöyle dökebiliriz


if(x>=0 && x<2)
y=x*x-2*x;


Matematik sorusunu okumaktan farkı yok.

Eğer x 0'a eşit büyük veya 2'den küçükse ---> y=x^2-2x

Bu şekilde diğer kısımları da yapmaya çalışın.

Yardımınız için teşekkür ederim söylediğiniz gibi soru okumaktan farkı yokmuş



J
13 yıl
Binbaşı

merhaba herkese iyi geceler 1 adet sorum var yardım edermisiniz...
#include <stdio.h>
#include <stdlib.h>
int main()
{int k,u,c,m;


printf ("Enter Your Number: ");
scanf ("%d",&k);
for(u=2; u<k ; u++)
{
m=1;
for(c=2 ; c<u; c++)
{
if(u%c == 0)
{
m=0;break;

}
}
if(m == 1)
printf("%d,mustafakkkk",u);
}
}
***gibi bir asal sayı bulma kodu yazdım ama mesela koda 9 yazdığımda 9 u almıyor 9 u nasıl ekliyebilirm herkese teşekkürler..***


Bu mesaja 2 cevap geldi.
O
13 yıl
Yüzbaşı

Arkadaşlar aşağıda eşkenar dörtgen çizen for'lu bi kod var ben bunun kenar uzunlugu demeylimde ortadaki en uzun seri yıldız sayısını kullanıcadan almak istiyorum ne yapmalıyım birde bu kodu bana biraz acıklayacak olan varmı foru biliyorum ama karışık geldi kod?
#include<stdio.h> 
int main( void )
{
int i, j;

for(i = 1; i <= 5; i++) {
for(j = 1; j <= 9; j++)
if((j <= (9 - (2*i - 1))/2) || (j > (i + 4)))
printf(" ");
else
printf("*");

printf("\n");
}
for(i = 4; i >= 1; i--){
for(j = 1; j <= 9; j++)
if((j <= (9 - (2*i - 1))/2) || (j > (i + 4)))
printf(" ");
else
printf("*");

printf("\n");
}

return 0;
}


Bu mesaja 1 cevap geldi.
M
13 yıl
Onbaşı

ben c++ da dosyaya mesela numara isim[10] soyad[] tanımlanıyor ya mesela ismi emine esra bunu birleşik değil arada boşluk bırakarak nasıl yazar?


Bu mesaja 1 cevap geldi.
G
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: jervis

merhaba herkese iyi geceler 1 adet sorum var yardım edermisiniz...
***gibi bir asal sayı bulma kodu yazdım ama mesela koda 9 yazdığımda 9 u almıyor 9 u nasıl ekliyebilirm herkese teşekkürler..***


Bir: 9 asal sayı değildir.

İki: for(u=2; u<=k ; u++)

Üç: Asal sayı kontrolü için yarısından bir eksiğine kadar bölmen yeterli
for(c=2 ; c<(u/2); c++)
Dört: Kodu yapıştırırken code tagı içinde yapıştırırsan okunması daha kolay olur.

Beş : scanf olmayan hali.http://codepad.org/VuTlAkx4



J
13 yıl
Binbaşı

quote:

Orijinalden alıntı: TeaTone

Belki merak eden olmuştur. Düzelttim yazdığım kodu.
Buyrun inceleyin.
 

#include <stdio.h>
#include <conio.h>


int main()
{
int a=12,b=2,c;
char x='W';
char y='Q';

do
{
printf("Islemi seciniz..: ");
x=getch();
switch (x)
{
case '+':
c=a+b;
printf("%d\n",c);
break;
case '-':
c=a-b;
printf("%d\n",c);
break;
case '*':
c=a*b;
printf("%d\n",c);
break;
case '/':
c=a/b;
printf("%d\n",c);
break;
default:
printf("Yalnis deger girdiniz..\n");

}

printf("Devam etmek istiyor musunuz? E/H\n");
y=getch();
}
while (y!='h');

}


sizin kodlailgili bişey soracağım atıyorum + dedik iki sayıyı girdik sonuç verince aşağıda yine menü çıkmasını nasıl sağlarız?
cevap=4 yazıp aşağıda hemen tekrar menü çıksa?nasıl olur kod?şimdiden teşekkürler...


Bu mesaja 1 cevap geldi.
G
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: minanur

ben c++ da dosyaya mesela numara isim[10] soyad[] tanımlanıyor ya mesela ismi emine esra bunu birleşik değil arada boşluk bırakarak nasıl yazar?


Ne yapmaya çalıştığını kod ile gösterirsen daha iyi olur.

Anladığım bu :

char isim[11] = "Emine Esra";
char soyisim[6] = "Bulut";

std::cout << isim << " " << soyisim << std::endl;



G
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: OgzKC

Arkadaşlar aşağıda eşkenar dörtgen çizen for'lu bi kod var ben bunun kenar uzunlugu demeylimde ortadaki en uzun seri yıldız sayısını kullanıcadan almak istiyorum ne yapmalıyım birde bu kodu bana biraz acıklayacak olan varmı foru biliyorum ama karışık geldi kod?
#include<stdio.h> 
int main( void )
{
int i, j;

for(i = 1; i <= 5; i++) {
for(j = 1; j <= 9; j++)
if((j <= (9 - (2*i - 1))/2) || (j > (i + 4)))
printf(" ");
else
printf("*");

printf("\n");
}
for(i = 4; i >= 1; i--){
for(j = 1; j <= 9; j++)
if((j <= (9 - (2*i - 1))/2) || (j > (i + 4)))
printf(" ");
else
printf("*");

printf("\n");
}

return 0;
}


Bir sayfa önde piramid ve ters piramid için yazılmış daha basit yazılmış C++ kodu bulabilirsin.

Bunu değiştirmek için şöyle bir şey yapabilirsin.

#include<stdio.h> 
#include <math.h>

int main( void )
{

int i, j;
float MAX_L = 15.0f;
int HALF_PLUS_1 = (int) ceil(MAX_L/2);
int HALF_MINUS_1 = (int) floor(MAX_L/2);

printf("%d %d\n",HALF_PLUS_1,HALF_MINUS_1);
for(i = 1; i <= HALF_PLUS_1; i++) {
for(j = 1; j <= MAX_L; j++)
if((j <= (MAX_L - (2*i - 1))/2) || (j > (i + HALF_MINUS_1)))
printf(" ");
else
printf("*");

printf("\n");
}
for(i = HALF_MINUS_1; i >= 1; i--){
for(j = 1; j <= MAX_L; j++)
if((j <= (MAX_L - (2*i - 1))/2) || (j > (i + HALF_MINUS_1)))
printf(" ");
else
printf("*");

printf("\n");
}

return 0;
}


MAX_L değerini kullanıcıdan artık scanf vesaire ile alabilirsin.



T
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: jervis




Demek istediğin bu mu?
 
#include <stdio.h>
#include <conio.h>


int main()
{
int a=12,b=2,c;
char x='W';
char y='Q';

do
{
printf("Islemi seciniz..: ");
x=getch();
switch (x)
{
case '+':
c=a+b;
printf("%d\n",c);
break;
case '-':
c=a-b;
printf("%d\n",c);
break;
case '*':
c=a*b;
printf("%d\n",c);
break;
case '/':
c=a/b;
printf("%d\n",c);
break;
default:
printf("Yalnis deger girdiniz..\n");

}

}
while (true);

}





< Bu mesaj bu kişi tarafından değiştirildi TeaTone -- 24 Kasım 2012; 1:35:02 >
Bu mesaja 1 cevap geldi.
C
13 yıl
Binbaşı

şöle bir ödevim var fikir verirsniz başlamak için sevinirim

1 0 1 0 1
1 0 1 1 1
1 1 1 0 0
0 0 1 0 0
0 0 1 1 1

böyle bir matris girildiğiden a(1,1) den a(n,n) e giden yolu bulan bi algoritma yazmam gerek burda n=5. sağa sola haraket edebiliyoruz sadece(labirent gibi).Mesela bu örnekde cevap a11-a21-a31-a32-a33-a43-a53-a54-a55 olucak

c-c# farketmiyor





< Bu mesaj bu kişi tarafından değiştirildi companjera -- 24 Kasım 2012; 22:17:03 >
Bu mesaja 2 cevap geldi.
W
13 yıl
Çavuş

merhaba forum ahalisi.
bir ödevim var.otelde rezervasyon programı yazmam lazım.şu ana kadar fazla bir şey görmedik derste,basit şeyler aslında.ama bu konuda spesifik bir örnek olmadı.
3 çeşit oda tipi var.L(lake view) P(Pool day) G(garden view)
string bilmiyoruz bu arada.benim charla bu 3 ü input olarak girmem lazım.ama yapamıyorum.daha doğrusu char'ı öğrendim ama altta if'te yazarken nasıl yazacağım bilmiyorum. oda tipi L ise fiyat 100 olur şeklinde output olması gerekiyor.

char roomtype1='P'; 
char roomtype2='L';
char roomtype3='G';
System.out.println("What kind of room do you want?")
if(


if kısmına ne yazmam lazım ? şimdiden teşekkürler.



G
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: companjera

şöle bir ödevim var fikir verirsniz başlamak için sevinirim

1 0 1 0 1
1 0 1 1 1
1 1 1 0 0
0 0 1 0 0
0 0 1 1 1

böyle bir matris girildiğiden a(1,1) den a(n,n) e giden yolu bulan bi algoritma yazmam gerek burda n=5. sağa sola haraket edebiliyoruz sadece(labirent gibi).Mesela bu örnekde cevap a11-a21-a31-a32-a33-a43-a53-a54-a55 olucak

c-c# farketmiyor

http://www.oyungelistirici.org/wiki/index.php?title=Yeni_Ba%C5%9Flayanlar_%C4%B0%C3%A7in_A*_Yol_Bulma_Algoritmas%C4%B1(%C3%87eviri)

http://en.wikipedia.org/wiki/Pathfinding



O
13 yıl
Onbaşı

merhaba programcı arkadaşlarım lise 2 öğrencisiyim bilişim teknolojileri bölümünde okuyorum c# programlama dilini öğreniyoruz ve ben basit bir not hesaplama programı geliştirdim fakat bir sıkıntım var 3 yazılı 1 sözlü notunun ortalmaasını alıp geçti kaldı vs. textboxlara bilgi giriliyor.Ancak şöyle bi sorunum var şimdi 3 yazılı 1 sözlü girilecek şekilde ayarladım ama 4 textboxtan 1 tanesi boş bırakılınca prog. hata veriyor.Yeni olduğum için bu sorunu henüz aşamadım yardımcı olurmusunuz



{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
MessageBox.Show("Hoş Geldiniz :)");
MessageBox.Show("Bu basit bir not hesaplama programıdır.");
MessageBox.Show("Coding By Onur");

}

private void button1_Click(object sender, EventArgs e)
{
int yazili1 = Convert.ToInt32(textBox1.Text);
int yazili2 = Convert.ToInt32(textBox2.Text);
int yazili3 = Convert.ToInt32(textBox3.Text);
int sozlu = Convert.ToInt32(textBox4.Text);
int ort = (yazili1 + yazili2 + yazili3 + sozlu) / 4;
string durum = (textBox6.Text);
textBox5.Text = ("" + ort);

if (ort >= 0 && ort <= 24)
{
textBox6.Text = ("0 = Kaldı :(");
}
if (ort >= 25 && ort <= 44)
{
textBox6.Text = ("1 = Kaldı :(");
}
if (ort >= 45 && ort <= 54)
{
textBox6.Text = ("2 = Geçti");
}
if (ort >= 55 && ort <= 69)
{
textBox6.Text = ("3 = Orta");
}
if (ort >= 70 && ort <= 84)
{
textBox6.Text = ("4 = İyi");
}
if (ort >= 85 && ort <= 100)
{
textBox6.Text = ("5 = Pekiyi :)");
}

}


Bu mesaja 1 cevap geldi.
C
13 yıl
Binbaşı

quote:

Orijinalden alıntı: OnrAvc56

merhaba programcı arkadaşlarım lise 2 öğrencisiyim bilişim teknolojileri bölümünde okuyorum c# programlama dilini öğreniyoruz ve ben basit bir not hesaplama programı geliştirdim fakat bir sıkıntım var 3 yazılı 1 sözlü notunun ortalmaasını alıp geçti kaldı vs. textboxlara bilgi giriliyor.Ancak şöyle bi sorunum var şimdi 3 yazılı 1 sözlü girilecek şekilde ayarladım ama 4 textboxtan 1 tanesi boş bırakılınca prog. hata veriyor.Yeni olduğum için bu sorunu henüz aşamadım yardımcı olurmusunuz



{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
MessageBox.Show("Hoş Geldiniz :)");
MessageBox.Show("Bu basit bir not hesaplama programıdır.");
MessageBox.Show("Coding By Onur");

}

private void button1_Click(object sender, EventArgs e)
{
int yazili1 = Convert.ToInt32(textBox1.Text);
int yazili2 = Convert.ToInt32(textBox2.Text);
int yazili3 = Convert.ToInt32(textBox3.Text);
int sozlu = Convert.ToInt32(textBox4.Text);
int ort = (yazili1 + yazili2 + yazili3 + sozlu) / 4;
string durum = (textBox6.Text);
textBox5.Text = ("" + ort);

if (ort >= 0 && ort <= 24)
{
textBox6.Text = ("0 = Kaldı :(");
}
if (ort >= 25 && ort <= 44)
{
textBox6.Text = ("1 = Kaldı :(");
}
if (ort >= 45 && ort <= 54)
{
textBox6.Text = ("2 = Geçti");
}
if (ort >= 55 && ort <= 69)
{
textBox6.Text = ("3 = Orta");
}
if (ort >= 70 && ort <= 84)
{
textBox6.Text = ("4 = İyi");
}
if (ort >= 85 && ort <= 100)
{
textBox6.Text = ("5 = Pekiyi :)");
}

}

if(textbox1.Text==null){int yazili1==0;}

gibi bir koşul koyarsan textbox boşken sıfır alır o değeri ya da başka birşeyde yapabilirsin o değer girilmemişse


Bu mesaja 2 cevap geldi.
W
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: garui

quote:

Orijinalden alıntı: welowis

C de piramit yapmanin mantigi nedir for dongusuyle?
Mesela dik ucgen seklinde piramit. Tanimladigimiz i ve j jin satir sutun olup olmadigini nasil anlicam iyicene kafam karisti..

Nasıl kullandığına bağlı hangisi satır hangisi sütun ? Kodun nerede ?

Dik üçgen çizdirmek içinde her zaman i,j gerekmiyor. Hele iç-içe for döngüsü de gerekmiyebilir. Burada düşünce mantığın önemli "Nasıl ekrana dik üçgen bastırırım ?"
Aşağıda 4 dik üçgen var. Ne iç-içe for döngüsü ne j var. pyramid_floor değerini değiştirdikçe dik üçgenleri büyütüp küçültebilirsin. pyramid_floordan büyük olmamak kaydıyla, pyramid_top büyütürsen dik yamuk elde edersin.

Mantık senin mantığın ve düşünce tarzın. Ben bir şeyi sadece bir yolla yaparım diye bir şey çoğu zaman yok. Aşağıdaki kod i ve j ile yine tek for üzerinde de dönebilir ama daha kompleks olur.

Kodunu göster ona göre nere satır nere sütün söyliyelim. (Evet direk kullanma diye C++ )

/* DH GaRUi */ 
#include <iostream>
#include <iomanip>

#define pyramid_floor 10
#define pyramid_top 1

int main()
{

int i;

for (i=pyramid_top; i<=pyramid_floor ; ++i)
{
cout << setw(i) << setfill('*') << '*' << endl;
}

cout << endl;

for (i=pyramid_floor; i>=pyramid_top ; --i)
{
cout << setw(i) << setfill('*') << '*' << endl;
}

cout << endl;

for (i=pyramid_top; i<=pyramid_floor; ++i)
{
if(i<pyramid_floor) { cout << setw(pyramid_floor-i) << setfill(' ') << ' ';}
cout << setw(i)<< setfill('*') << '*' << endl;
}

cout << endl;

for (i=pyramid_floor; i>=pyramid_top ; --i)
{
if(i<pyramid_floor) { cout << setw(pyramid_floor-i)<< setfill(' ') << ' ';}
cout << setw(i) << setfill('*') << '*' << endl;
}


return 0;
}


 
*
**
***
****
*****
******
*******
********
*********
**********

**********
*********
********
*******
******
*****
****
***
**
*

*
**
***
****
*****
******
*******
********
*********
**********

**********
*********
********
*******
******
*****
****
***
**
*


Ekleme: Nasıl normal piramit yapmışlar diye baktığımda 3 for iç-içe görmüştüm. Kodun kompleks yapısı iyice artıyor. Aşağıda 3 for ve 3 normal piramit var. Birinde j bile yok.

 
/* DH GaRUi */
#include <iostream>
#include <iomanip>

#define pyramid_floor 11
#define pyramid_top 1
#define pyramid_increase 2

int main()
{

int i;

for (i=pyramid_top; i<=pyramid_floor ; i+=pyramid_increase)
{
cout << setw(pyramid_floor-i/pyramid_increase)<< setfill(' ') << ' ' << setw(i) << setfill('*') << '*' << endl;
}

cout << endl;

int j;

for (i=pyramid_top, j=pyramid_floor/pyramid_increase; i<=pyramid_floor ; i+=pyramid_increase, --j)
{
if(i<pyramid_floor ) { cout << setw(j)<< setfill(' ') << ' ';}
cout << setw(i) << setfill('*') << '*' << endl;
}

cout << endl;

for (i=pyramid_floor, j=pyramid_top/pyramid_increase; i>=pyramid_top ; i-=pyramid_increase, ++j)
{
if(i<pyramid_floor ) { cout << setw(j)<< setfill(' ') << ' ';}
cout << setw(i) << setfill('*') << '*' << endl;
}

return 0;
}


 
*
***
*****
*******
*********
***********

*
***
*****
*******
*********
***********

***********
*********
*******
*****
***
*



Geç yazdığım için özür dilerim sınavlardan dolayı.

Kodu biz kendimiz yazacakmışız ama kod verilse de şekli çıkartamam zaten. Resimler bize gösterilen kısım. Pyramid floor filan görmedik biz :(


quote:

Orijinalden alıntı: MrOwl

quote:

Orijinalden alıntı: welowis

C de piramit yapmanin mantigi nedir for dongusuyle?
Mesela dik ucgen seklinde piramit. Tanimladigimiz i ve j jin satir sutun olup olmadigini nasil anlicam iyicene kafam karisti..

Esasında çok basit. Arkadaşımız yardımcı olacak çok güzel bir örnek vermiş. Ben de pratik bir yöntem söyleyeyim.

Kareli bir defterin varsa, eğer yoksa kendin çizebilirsin, çizmek istediğin üçgeni çiz. Sonra köşe noktalarını(köşeden kastım üçgenin kenarlarının karelerin kesişim noktasından geçtiği yerler) belirle. Orijini sol üst olarak belirleyerek(çünkü çıktı bu noktadan başlıyor) noktaların koordinatlarını yaz fakat pozitif değerlerle yaz. Noktaları belirledikten sonra aralarında matematiksel bir bağlantı olduğunu göreceksin. Bu sana kullanmak gereken algoritmanın en basit şekilde mantığını verir.

Kolay gelsin.


dediklerinizi yaptıktan sonra bunu kodlamada nasıl dönüştüreceğim peki ?
1. snıftayım ama mantığını öğrenmek istiyorum ezberden gitmek yerine. Yani şu şekli çıkart denildiğinde takılmak yerine kodu ben çıkartayım istiyorum.


< Resime gitmek için tıklayın >

< Resime gitmek için tıklayın >

< Resime gitmek için tıklayın >

Önerebileceğiniz kitap var mı ? Ya da video eğitimi mi bakayım netten ? Ne yapacağımı şaşırdım hocada iş yok, kendim halletmeye çalışıcam.


Bu mesaja 2 cevap geldi.
G
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: welowis

Geç yazdığım için özür dilerim sınavlardan dolayı.

Kodu biz kendimiz yazacakmışız ama kod verilse de şekli çıkartamam zaten. Resimler bize gösterilen kısım. Pyramid floor filan görmedik biz :(


Önerebileceğiniz kitap var mı ? Ya da video eğitimi mi bakayım netten ? Ne yapacağımı şaşırdım hocada iş yok, kendim halletmeye çalışıcam.

#define pyramid_floor 11

satırını kastediyorsan. Bunu ileride görürsünüz belki de görmüşsüüzdür. preprocessor tanımllamas Burada yapılam, code compile olurken, compilerın pyramid_floor gördüğü yere 11 yazmasından ibaret. Anlaşılır olması için ismi ben koydum. buzdolabı yazsam da olurdu yani.

Burada önemli olan düşünce tarzın. Şu işi öğreniyimde ilerde ne karakter görürsem mantığın tamamen yanlış diyebilirim. Yukarıda gördüğün code'u ben ilk defa yazdım diyebilirim.Daha önce kimsede piramit dik ügen çiz demedi bana. Normalde ders dışında da böyle bir şey istenmesi zor. Amaç algoritma mantığını geliştirmek. Nasıl yaparımın diyip algoritma oturtuyorsun kafanda.

Bu tip iç-içe for döngülerinde maksadı kodu direk okuyarak anlamayabilirsin. Ben mesela koda bakınca diyebileceğim ekrana birsürü for içinde boşluk ve M veya W bastığı. (2. sorunun cevabı yanlış gibi geliyor. İlk bakışta hata var gibi. Test ettim çalışıyormuş. Ama parantezleri kullanmadan böyle üstüste j kullanımı kodun okunmasını zorlaştırabiliyor). İleride binlerce satır kodun içinde böyle okunması zor kod yazmak çok içacıcı olmayabilir. Zaten sanırsam 2N^2 yapısı olan bir kod.


Olay mantığını çözmek öncelikle. Genel yazılım mantığını kafana oturtup neler yapılabilir tahmin edip nasıl yapıldığını bulacaksın.


Ekleme : Kodda fark yok ama bence 2. soru aşağıaki şekilde daha okunur. Kodu anlamak için i nin bir iki değeri için hesap yapman gerek. i 13 için ve i 12 için kodu okursan gerisini çıkartırsın.

#include <stdio.h> 
int main()
{
int i,j;

for (i=13;i>=0;i--)
{
for(j=0;j<i;j++) { printf(" "); }
for(j=13;i<=j;j--) { printf("W"); }
printf("\n");
}
return 0;
}





< Bu mesaj bu kişi tarafından değiştirildi garui -- 25 Kasım 2012; 0:47:20 >