▃ ▅ ησ ♥ яєѕρєcт ▅ ▃
Süper Üye
Bu deyim, diğer döngü deyimleri gibi bir kümeyi bir çok kez tekrarlamak için kullanılır. Koşul sınaması while da olduğu gibi döngüye girmeden yapılır. Bu döngü deyimin içinde diğerlerinden farklı olarak başlangıç değeri ve döngü sayacına sahip olmasıdır. Bu deyimin kullanımı Program 7.3 de gösterilmiştir Genel yazım biçimi:
for( başlangıç ; koşul ; artım )
{
...
döngüdeki deyimler;
...
}
01:
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
/* 07prg03.c: for döngüsü ile faktoriyel hesabı. */
#include <stdio.h>
int main()
{
long i, n, faktor;
printf("Faktoriyeli hesaplanacak sayi girin : ");
scanf("%ld",&n);
faktor=1;
for(i=1; i<=n; i++){
faktor *= i; /* n! = 1 x 2 x 3 x ... x n */
}
printf("%ld! = %ld\n", n, faktor);
return 0;
}
ÇIKTI
Faktoriyeli hesaplanacak sayi girin : 4
4! = 24
ÇIKTI
Faktoriyeli hesaplanacak sayi girin : 15
15! = 2004310016
for(i=1; i<=n; i++)
faktor *= i;
faktor *= i;
01:
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
/* 07prg04.c: Sayı sistemi
%d : desimal 10 tabanındaki sayı
%o : oktal 8 tabanındaki sayı
%x : hexadesimal 16 tabanındaki sayı (küçük harf)
%X : hexadesimal 16 tabanındaki sayı (büyük harf) */
#include <stdio.h>
int main()
{
int i;
for (i=0; i<16; i++)
printf("%2d %2o %x %X\n", i,i,i,i);
return 0;
}
ÇIKTI
0 0 0 0
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 4
5 5 5 5
6 6 6 6
7 7 7 7
8 10 8 8
9 11 9 9
10 12 a A
11 13 b B
12 14 c C
13 15 d D
14 16 e E
15 17 f F
for( başlangıç ; koşul ; artım )
{
...
döngüdeki deyimler;
...
}
Bağlantıları görmek için lütfen
Giriş Yap
for döngüsü01:
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
/* 07prg03.c: for döngüsü ile faktoriyel hesabı. */
#include <stdio.h>
int main()
{
long i, n, faktor;
printf("Faktoriyeli hesaplanacak sayi girin : ");
scanf("%ld",&n);
faktor=1;
for(i=1; i<=n; i++){
faktor *= i; /* n! = 1 x 2 x 3 x ... x n */
}
printf("%ld! = %ld\n", n, faktor);
return 0;
}
ÇIKTI
Faktoriyeli hesaplanacak sayi girin : 4
4! = 24
ÇIKTI
Faktoriyeli hesaplanacak sayi girin : 15
15! = 2004310016
Program da faktoriyel hesabı 16. satırda gerçekleştirilmiştir. Faktöriyel, bilindiği gibi n! = 1x2x3x ... xn tanımlanır. Gerçekte 15! = 1307674368000 olmasına rağmen, program 15! = 2004310016 olarak hesaplamıştır. Sizce bunun sebebi nedir? Cevap için bkz:
Bağlantıları görmek için lütfen
Giriş Yap
.Program 7.3'de döngüye girilmeden, faktor = 1 atması yapılmıştır.
faktor = 1;for(i=1; i<=n; i++)
faktor *= i;
Bu döngü öncesi ilk değer ataması, döngünün başlangıç kısmında şu şekilde de yapılabilir:
for(faktor=1, i=1; i<=n; i++)faktor *= i;
printf fonksiyonu ile desimal (taban-10) sayılarıların nasıl yazdırılacağı bundan önceki kısımlarda gösterilmişti. Program 7.4'te 0-15 arası desimal sayıların Oktal (taban-8) ve Heksadesimal (taban-16) karşılıkları ile printf kullanılarak yazdırılması gösterilmiştir.
Bağlantıları görmek için lütfen
Giriş Yap
Sayı sistemi01:
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
/* 07prg04.c: Sayı sistemi
%d : desimal 10 tabanındaki sayı
%o : oktal 8 tabanındaki sayı
%x : hexadesimal 16 tabanındaki sayı (küçük harf)
%X : hexadesimal 16 tabanındaki sayı (büyük harf) */
#include <stdio.h>
int main()
{
int i;
for (i=0; i<16; i++)
printf("%2d %2o %x %X\n", i,i,i,i);
return 0;
}
ÇIKTI
0 0 0 0
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 4
5 5 5 5
6 6 6 6
7 7 7 7
8 10 8 8
9 11 9 9
10 12 a A
11 13 b B
12 14 c C
13 15 d D
14 16 e E
15 17 f F