For döngüsünde aynı anda birden fazla değişken değiştirmek

Bloga koyduğum ilk programda, daha önce kodlarda gördüğüm ancak bugün uygulamaya geçirdiğim bir özellikten  bahsetmek istedim. İşleyişi şu şekilde gerçekleşiyor:

for(başlangıç;koşul;artış/azalış){}

yapısını kullanıyorduk. Şimdi biraz değişiklik yapıp, daha doğrusu ufak bir ekleme yapıp aynı anda birden fazla değişkeni artırma ya da azaltma işlemi yapacağız. Bu da yukarıdaki kodta artış/azalış olarak belirttiğimiz kısma yapacağımız eklemeler sayesinde gerçekleşecek. Virgül ile ayırarak istediğimiz kadar değişkenin döngü içerisinde değişmesini sağlayabiliriz. Mesela:

for(i = 1; i<101; i++, j–, ucuncusayi++){}

Yapı aslında oldukça basit. Yukarıda da söylediğim gibi aralara birer virgül atarak istediğimiz işlemleri yaptırabiliyoruz. Gerekli mi derseniz, döngünün içerisinde bunu zaten yapma şansımız var evet. Ancak kısa kod iyidir, en azından Python kültüründe bunu çok gördüm. C’de ne kadar kısa kod olabilir bilmem ama, umarım işe yarar. Son olarak da bununla ilgili yaptığım ufak bir örneği paylaşayım:

#include <stdio.h>
int main(){
int x,y,i;
y = 10;
for(i=1;i<101;i++, y-- ){
printf("i = %10d, y =  %5d\n",i,y);
}
scanf("%d",&x);
return 0;
}

Yukarıdaki örnekle karşılaştırınca kodlar daha rahat anlaşılacaktır. Siteye henüz kodları renklendirecek bir eklenti yüklemediğimden dolayı şu anlık biraz çirkin gözükebilir. C derleyiciniz sanırım şu anlık o işi benim yerime yapacaktır.

 
comments powered by Disqus