Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

C'de üçgen yazdırma


Öne çıkan mesajlar

Mesaj tarihi:
şu şekli nasıl yazdırırım?
kullanıcıdan bi deger alıyor, o değer kadar satıra üçgen çiziyor. sonra üçgenin tersini çiziyor. normali sorun değil de yıldızları ortalama işi nasıl oluyor? bi metodu var mı? :S

edit: şekil yanlış olmuş. doğrusu bu


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

Mesaj tarihi:
ehue bizim take home examin sorularından biriydi bu. ya da buna cok benzer bişey. hatta sadece 2 dongu kullanarak yapın demisti hoca.

ama ben bilmiyorum nasıl yapıldıgını unuttum simdi kac sene gecti :P
Mesaj tarihi:
değeri tek sayı aldırırsan; (n diyelim)

ilk adımda, (n-1)/2 boşluk, 1 yıldız
ikinci adımda, (n-1)/2-1 boşluk, 2 yıldız
üçüncü adımda, (n-1)/2-1 boşluk, 3 yıldız
...
0 boşluk, n yıldız

sonra loop u tersten.
Mesaj tarihi:
toggie,
2 döngü kullanıyosun da. sorun o yıldızları ortaya yazdırarak şekli çıkarmak..
*
**
***
****
*****
****
***
**
*

bu şekli yazdırmada sorun yok..
Mesaj tarihi:
fizban said:
değeri tek sayı aldırırsan; (n diyelim)

ilk adımda, (n-1)/2 boşluk, 1 yıldız
ikinci adımda, (n-1)/2-1 boşluk, 2 yıldız
üçüncü adımda, (n-1)/2-1 boşluk, 3 yıldız
...
0 boşluk, n yıldız

sonra loop u tersten.

ben de bunu düşünmekteydim ama n herhangi bi sayı. çift verince patlıyor sankim :S

edit: o zaman da başka bi döngü yazmak gerek tekrardan. 4 for döngüsü.. daha az döngüyle yırtabilme şansı var mı?
Mesaj tarihi:
zamanında hoplayanmanda.com forumlarında (yanlış hatırlamıyorsam) Bone aynı istekte bulunmuştu.

müm ile beraber bir algoritma yazmıştık c# ile.. hoplayanmanda forumu kapandı ama tim (di) belki bir yerlerde tutuyordur.. çıkarabilirse, işine yarar diye düşünüyorum..
Mesaj tarihi:
maelstrom said:
çok çabuk caydın

yok aga uzun zamandır düşünüyorum.. C# kodu olsa daha süper olur zaten.. daha önce canımı sıkan bi soruydu.. yapamamıştım. tekrar baştan C# öğrenmeye başladım. aklıma da bu soru geldi işte...

o kodu bulurlarsa süper olur valla. çok merak ediyorum çünkü.
Mesaj tarihi:

int k = 7;

for(t=1;t<=k;t=t+2)
{
//(k-t)/2 tane boşluk yazdır
// t tane yıldız yazdır
}

t = t-2;

for(;t>=1;t=t-2)
{
//(k-t)/2 tane boşluk yazdır
// t tane yıldız yazdır
}



gibin bişi olması lazım. c hatırlamıyorum pek, kafadan yazdım ama doğrudur heralde. altı üstü iki döngü var : p
Mesaj tarihi:
Çooook uzun zamandır hiç code yazmamıştım. Şöyle bir code yazdım tam olarak istediğin şey değil ama sonuçta senin istediğin sonucu veriyor.

Code


int j,i,k,s;
k=10;
for (j=1;j<=k;j++)
{
for (s=1;s<=k-j;s++)
{
printf(" ");
}
for (i=1;i<=(j*2)-1;i++)
{
printf("*");
}
printf("n");
}
for (j=k-1;j>=1;j--)
{
for (s=1;s<=k-j;s++)
{
printf(" ");
}
for (i=1;i<=(j*2)-1;i++)
{
printf("*");
}
printf("n");
}



P.S: Yazarken bir sürü şeyi unutmuş olduğumu farkettim ya. Bana bir kaç kitap ve kaynak adı söylerseniz biraz ders çalışayım :)
Mesaj tarihi:
di said:

int k = 7;

for(t=1;t<=k;t=t+2)
{
//(k-t)/2 tane boşluk yazdır
// t tane yıldız yazdır
}

t = t-2;

for(;t>=1;t=t-2)
{
//(k-t)/2 tane boşluk yazdır
// t tane yıldız yazdır
}



gibin bişi olması lazım. c hatırlamıyorum pek, kafadan yazdım ama doğrudur heralde. altı üstü iki döngü var : p

=)
açıkçası hoplayanmanda'dakini özellikle söylememin sebebi, algoritmasının iyi olmasıydı. şimdi benim de aklıma gelmedi..
Mesaj tarihi:
x = en genis yerdeki yildiz sayisi

dersek (ki baklava sekli yakalayabilmek icin tek sayi olmasi gerekli)

for( i=-(x-1)  ; i<x ; i=i+2 )

dongusunde

abs( abs(i)-x )

yildiz sayisini

(x - yildiz sayisi)

da toplam bosluk sayisini verir

haliyle
(x - yildiz sayisi)/2

de bir taraftaki bosluk sayisi


tek dongude yazdirin iste. (hoplayanmanda'da yaptigimiz buna benzer birseydi galiba)

ek: abs = mutlak deger (absolute value)
Mesaj tarihi:
Ractamainus said:
zamanında hoplayanmanda.com forumlarında (yanlış hatırlamıyorsam) Bone aynı istekte bulunmuştu.

müm ile beraber bir algoritma yazmıştık c# ile.. hoplayanmanda forumu kapandı ama tim (di) belki bir yerlerde tutuyordur.. çıkarabilirse, işine yarar diye düşünüyorum..


aaa gormemisim ben bunu Çılgın çok afedersin. evet duruyor ama kurulu değil. tekrar mı açsak naapsak =)
×
×
  • Yeni Oluştur...