Arama butonu
Bu konudaki kullanıcılar: 2 misafir, 1 mobil kullanıcı
4171
Cevap
168230
Tıklama
3
Öne Çıkarma
Cevap: C/C++/C# Sorularınız Buraya. . .(GÜNCEL) (37. sayfa)
-
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: darrenjonas

arkadaşlar ödevin 2. sorusunu şöyle yapmaya kalktım ama işin içinden çıkamadım hep karıştı ya.

 
#include<iostream>
using namespace std;
main()
{
double f=1,c=-17.222222222222,sayac=x,x,y; //x ilk deger y ikinci deger
cout<<"\n\tFAHRENHAYT - SANTIGRAT DEGISIM TABLOSU";
cout<<"1. Degeri Giriniz :";
cin>>x;
cout<<"2. Degeri Giriniz :";
cin>>y;
while(sayac<=y)
{
cout<<c<<"\n santigrat= "<<sayac<<"\n fahrenayt= "<<f;
f=++sayac*c;
}

getchar(); getchar();
return 0;
}



 
#include <iostream>
#include <cstdlib>

using namespace std;

double CtoF(int derece)
{
return (derece * 1.8 + 32);
}

int main()
{
int ilkDeger = 0, sonDeger = 0;
cout<<"\n\tFAHRENHAYT - SANTIGRAT DEGISIM TABLOSU\n";
cout<<"1. Degeri Giriniz :";
cin >> ilkDeger;
cout<<"2. Degeri Giriniz :";
cin >> sonDeger;
while(ilkDeger <= sonDeger)
{
cout << ilkDeger << "C = " << CtoF(ilkDeger) << "F" << endl;
ilkDeger++;
}

system("PAUSE");
return 0;
}

Gördüğün gibi zor değil. Diğer sorularında zor değil. Sen yine biraz uğraşıp yapmayı dene kodunu yaz biz sana hatalarını söyleyelim böylece sende ödevini bitirirsin. Direk kodları isteme.
 
double sayac=x,x,y;

Sen burada x'i tanımladan sayac değişkenine atmaya çlaışmassın. Ayrıca x değişkenini kullanıcıdan aldıktan sonra ataman lazım.



J
13 yıl
Binbaşı

#include <stdio.h>
#include <stdlib.h>
void main()
{
char x;
printf("Press P or p for Prime Numbers\n");
printf("Press L or l for Leibniz Series\n");
printf("Press C or c for combinations\n");
printf("Press E or e for Exit\n");


printf("Enter your choice : ");
x=getchar();

switch(x)
{
case 'p':
case'P':
printf("mk");
break;





case'l':
case'L':
printf("mk");
break;




case'c':
case'C':
break;




case'e':
case'E':

;break;




}





}
***BEYLER BÖYLE BİR TASLAK KOD YAZIYORUMDA E VE e OLAN YERE EXİT KOYMAM LAZIM NASIL OLACAĞINA KAFAM BASMADI LÜTFEN BİR YARDIM EDERMİSİNİZ
NOT:E VEYA e YAZINCA PROGRAMDAN ÇIKACAK
ŞİMDİDEN TEŞEKKÜRLER


Bu mesaja 2 cevap geldi.
M
13 yıl
Binbaşı

quote:

Orijinalden alıntı: jervis

#include <stdio.h>
#include <stdlib.h>
void main()
{
char x;
printf("Press P or p for Prime Numbers\n");
printf("Press L or l for Leibniz Series\n");
printf("Press C or c for combinations\n");
printf("Press E or e for Exit\n");


printf("Enter your choice : ");
x=getchar();

switch(x)
{
case 'p':
case'P':
printf("mk");
break;





case'l':
case'L':
printf("mk");
break;




case'c':
case'C':
break;




case'e':
case'E':

;break;




}





}
***BEYLER BÖYLE BİR TASLAK KOD YAZIYORUMDA E VE e OLAN YERE EXİT KOYMAM LAZIM NASIL OLACAĞINA KAFAM BASMADI LÜTFEN BİR YARDIM EDERMİSİNİZ
NOT:E VEYA e YAZINCA PROGRAMDAN ÇIKACAK
ŞİMDİDEN TEŞEKKÜRLER

return koyabilirsin



S
13 yıl
Binbaşı

quote:

Orijinalden alıntı: darrenjonas

Aynen kopyalarsan sadece sana kötülük olur. En önemli derslerinden biri.

soru 1:
#include <stdio.h> 
#include <stdlib.h>

int main()
{
float i;

for(i=100;i<=170;i++)
{
printf("%.2f mil = %.3fkm\n",i,i*1.6093);
}
system("PAUSE");
return 0;
}


soru 2:
#include <stdio.h> 
#include <stdlib.h>

int main()
{
float derece=3,baslangic,bitis;

printf("fahrenheit icin baslangic degeri ve bitis degerleri giriniz\n");
scanf("%f%f",&baslangic,&bitis);

printf("%5s%10s\n","fahrenheit","derece");

for(;baslangic<=bitis;baslangic++)
{
derece=((baslangic-32)*(5.0/9.0));

printf("%5.1f%15.2f\n",baslangic,derece);
}
fflush(stdin);
getchar();
return 0;
}


soru 3:
#include <stdio.h> 
#include <stdlib.h>
#include <limits.h>

int main()
{
int sayi,sayac=0;
int enbuyuk=INT_MIN;

while(1)
{
sayac++;

printf("sayi giriniz , ya da cikmak icin -1 girisi yapiniz\n");
scanf("%d",&sayi);

if(sayi>enbuyuk&&sayi!=-1)
enbuyuk=sayi;

if(sayi==-1)
break;
}

sayac--;
if(sayac==0)
printf("giris yapmadiniz\n");
else
printf("%d sayi girisi yaptiniz ve en buyuk sayiniz=%d\n",sayac,enbuyuk);

system("PAUSE");
return 0;
}


soru 4:
#include <stdio.h> 
#include <stdlib.h>

void fonksiyon1()
{
int sayac1,sayac2;
printf("ilk sekil\n");

for(sayac1=1;sayac1<=10;sayac1++)
{
for(sayac2=1;sayac2<=sayac1;sayac2++)
{
printf("*");
}
printf("\n");
}
printf("\n\n\n");
}

void fonksiyon2()
{
printf("ikinci sekil\n");
int sayac1,sayac2;

for(sayac1=1;sayac1<=10;sayac1++)
{
for(sayac2=10;sayac2>=sayac1;sayac2--)
{
printf("*");
}
printf("\n");
}
printf("\n\n\n");
}

void fonksiyon3()
{
int sayac1,sayac2,bosluk;
printf("ucuncu sekil\n");

for(sayac1=1;sayac1<=10;sayac1++)
{
for(bosluk=1;bosluk<sayac1;bosluk++)
{
printf(" ");
}

for(sayac2=10;sayac2>=sayac1;sayac2--)
{
printf("*");
}

printf("\n");
}
}

void fonksiyon4()
{
int sayac1,sayac2,bosluk;
printf("dorduncu sekil\n");

for(sayac1=1;sayac1<=10;sayac1++)
{
for(bosluk=10;bosluk>sayac1;bosluk--)
{
printf(" ");
}
for(sayac2=1;sayac2<=sayac1;sayac2++)
{
printf("*");
}
printf("\n");
}
}

int main()
{

fonksiyon1();
fonksiyon2();
fonksiyon3();
fonksiyon4();


system("PAUSE");
return;
}


soru 5:
#include <stdio.h> 
#include <stdlib.h>

int main()
{
int son=3,onceki=2,i,sira,tutucu;


printf("fibonacci serisi icin istediginiz sirayi seciniz\n");
scanf("%d",&sira);

for(i=3;i<=sira-1;i++)
{
tutucu=son;
son=son+onceki;
onceki=tutucu;
}
if(sira==1)
printf("1");
else if(sira==2)
printf("2");
else
printf("%d\n",son);

system("PAUSE");
return 0;
}


soru 6:
#include <stdio.h> 
#include <stdlib.h>

int main()
{
int sayi;

printf("bir sayi giriniz\n");
scanf("%d",&sayi);

if(sayi%2==0)
printf("sayiniz cift\n");
else
printf("sayiniz tek\n");


system("PAUSE");
return 0;
}


soru 7:
#include <stdio.h> 
#include <stdlib.h>

int main()
{
char karakter;
int sayac1,sayac2,kenar;

printf("kare olusturulacak karakteri giriniz\n");
scanf("%c",&karakter);
printf("kenar sayisini giriniz\n");
scanf("%d",&kenar);

for(sayac1=1;sayac1<=kenar;sayac1++)
{
for(sayac2=1;sayac2<=kenar;sayac2++)
{
printf("%c",karakter);
}
printf("\n");
}

system("PAUSE");
return 0;
}


soru 8:
#include <stdio.h> 
#include <stdlib.h>


float parkHesapla(float saat)
{
if(saat<=3)
return 2.0;

else if(saat>3&&saat!=24)
return (((saat-3)*0.5)+2);

else if(saat==24)
return 10.0;
}

int main()
{
float saat1,saat2,saat3,ucret1,ucret2,ucret3,toplamucret,toplamsaat;
printf("3 musteri icin park saatlerini sirasiyla giriniz\n");
scanf("%f%f%f",&saat1,&saat2,&saat3);

ucret1=parkHesapla(saat1);
ucret2=parkHesapla(saat2);
ucret3=parkHesapla(saat3);
toplamucret=ucret1+ucret2+ucret3;
toplamsaat=saat1+saat2+saat3;

printf("%4s%13s%16s\n","araba","saat","ucret");
printf("%4.f%14.2f%16.2f\n",1.0,saat1,ucret1);
printf("%4.f%14.2f%16.2f\n",2.0,saat2,ucret2);
printf("%4.f%14.2f%16.2f\n",3.0,saat3,ucret3);
printf("%4s%12.2f%16.2f\n","Toplam",toplamsaat,toplamucret);

system("PAUSE");
return 0;
}


soru 9:
#include <stdio.h> 
#include <stdlib.h>

int uss(int taban,int us)
{
int i,sonuc=1;

for(i=1;i<=us;i++)
{
sonuc*=taban;
}
return sonuc;

}

int main()
{
int taban,us;

printf("taban ve ussu sirasiyla giriniz\n");
scanf("%d%d",&taban,&us);

printf("%d uzeri %d = %d",taban,us,uss(taban,us));

system("PAUSE");
return 0;
}


soru 10:
#include <stdio.h> 
#include <stdlib.h>

int main()
{
int sayi,sayi2,bolucu=1,kalan,bolunen,i,yazdirma,sayac,sayac2,basamak,basamaksayaci;
int rakam[6]={0};

printf("sayinizi giriniz(6 basamaga kadar sayinizi giriniz)\n");
scanf("%d",&sayi);
sayi2=sayi;

for(bolucu=10,sayac=1,sayac2=0;bolucu<=sayi2*10;bolucu*=10,sayac*=10,sayac2++)
{
kalan=sayi%bolucu;
if(kalan!=0)
kalan=kalan/sayac;
rakam[sayac2]=kalan;
sayi=sayi-(kalan*sayac);
}

for(i=5;i>=0;i--)
{
if(rakam[i]!=0)
{
for(;i>=0;i--)
{
printf("%d ",rakam[i]);
break;
}
}
}
system("PAUSE");
return 0;
}



£
13 yıl
Yüzbaşı
Konu Sahibi

quote:

Orijinalden alıntı: darrenjonas

Beyler C++ bilenler lütfen yardım etsin.
Vizeye eklenicekmiş Adam hiçbişiyi doğru dürüst anlatmadı Bende anlayamadım.


http://iibf.bartin.edu.tr/ybs/files/dersnotlari/59_VYS%20%C3%96vev1.pdf

Nasıl yapılacağı hakkında hiçbir fikrim yok yapabilen arkadaşlar varsa pastebin'e kodu atıp linkini verirlerse çok sevinirim.

Edit:

DEV C++ ile çalıştırılacak.

Eğer hiçbirşey anlatmadıysa zaten yapamazsın bunları. Temel algoritma gerekli birazda.. Neyi nasıl yapacağını bilmen gerek. Şekil çizdirme soruları için for-while döngüleri ve dizileri iyi öğrenmen gerek. Üs alma programını hocan kabul ederse hazır bir fonksiyon ile yapabilirsin.



£
13 yıl
Yüzbaşı
Konu Sahibi

quote:

Orijinalden alıntı: jervis

#include <stdio.h>
#include <stdlib.h>
void main()
{
char x;
printf("Press P or p for Prime Numbers\n");
printf("Press L or l for Leibniz Series\n");
printf("Press C or c for combinations\n");
printf("Press E or e for Exit\n");


printf("Enter your choice : ");
x=getchar();

switch(x)
{
case 'p':
case'P':
printf("mk");
break;





case'l':
case'L':
printf("mk");
break;




case'c':
case'C':
break;




case'e':
case'E':

;break;




}





}
***BEYLER BÖYLE BİR TASLAK KOD YAZIYORUMDA E VE e OLAN YERE EXİT KOYMAM LAZIM NASIL OLACAĞINA KAFAM BASMADI LÜTFEN BİR YARDIM EDERMİSİNİZ
NOT:E VEYA e YAZINCA PROGRAMDAN ÇIKACAK
ŞİMDİDEN TEŞEKKÜRLER

case'E'; den sonra

Exit(); yaparak programı kapatabilirsin. veya return ile başa alabilirsin..


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

quote:

Orijinalden alıntı: £XE

quote:

Orijinalden alıntı: jervis

#include <stdio.h>
#include <stdlib.h>
void main()
{
char x;
printf("Press P or p for Prime Numbers\n");
printf("Press L or l for Leibniz Series\n");
printf("Press C or c for combinations\n");
printf("Press E or e for Exit\n");


printf("Enter your choice : ");
x=getchar();

switch(x)
{
case 'p':
case'P':
printf("mk");
break;





case'l':
case'L':
printf("mk");
break;




case'c':
case'C':
break;




case'e':
case'E':

;break;




}





}
***BEYLER BÖYLE BİR TASLAK KOD YAZIYORUMDA E VE e OLAN YERE EXİT KOYMAM LAZIM NASIL OLACAĞINA KAFAM BASMADI LÜTFEN BİR YARDIM EDERMİSİNİZ
NOT:E VEYA e YAZINCA PROGRAMDAN ÇIKACAK
ŞİMDİDEN TEŞEKKÜRLER

case'E'; den sonra

Exit(); yaparak programı kapatabilirsin. veya return ile başa alabilirsin..

hocam aynen yazım undefined reference to 'exit' yazısı çıkıyor
exitin içine 1,0,101,140, denedim hiç biri çkıkmadı


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

quote:

Orijinalden alıntı: jervis

quote:

Orijinalden alıntı: £XE

quote:

Orijinalden alıntı: jervis

#include <stdio.h>
#include <stdlib.h>
void main()
{
char x;
printf("Press P or p for Prime Numbers\n");
printf("Press L or l for Leibniz Series\n");
printf("Press C or c for combinations\n");
printf("Press E or e for Exit\n");


printf("Enter your choice : ");
x=getchar();

switch(x)
{
case 'p':
case'P':
printf("mk");
break;





case'l':
case'L':
printf("mk");
break;




case'c':
case'C':
break;




case'e':
case'E':

;break;




}





}
***BEYLER BÖYLE BİR TASLAK KOD YAZIYORUMDA E VE e OLAN YERE EXİT KOYMAM LAZIM NASIL OLACAĞINA KAFAM BASMADI LÜTFEN BİR YARDIM EDERMİSİNİZ
NOT:E VEYA e YAZINCA PROGRAMDAN ÇIKACAK
ŞİMDİDEN TEŞEKKÜRLER

case'E'; den sonra

Exit(); yaparak programı kapatabilirsin. veya return ile başa alabilirsin..

hocam aynen yazım undefined reference to 'exit' yazısı çıkıyor
exitin içine 1,0,101,140, denedim hiç biri çkıkmadı

Alıntıları Göster
quote:


hocam aynen yazım undefined reference to 'exit' yazısı çıkıyor
exitin içine 1,0,101,140, denedim hiç biri çkıkmadı


Yukarıda da söylenmiş. return 0; return 5; gibi kullan o zaman. switch main() içinde olduğundan program kapatılacaktır.

Normalde exit(0); çalışması lazım; zira gerekli libraryler include. Ama undefined reference headerların içinde exit bulunmadı gibi yazmış. O kısma sonra bak bence. Kullandığın compiler için arayabilirsin exit neden böyle diyor diye.





< Bu mesaj bu kişi tarafından değiştirildi garui -- 18 Kasım 2012; 16:35:08 >
Bu mesaja 1 cevap geldi.
£
13 yıl
Yüzbaşı
Konu Sahibi

quote:

Orijinalden alıntı: garui

quote:


hocam aynen yazım undefined reference to 'exit' yazısı çıkıyor
exitin içine 1,0,101,140, denedim hiç biri çkıkmadı


Yukarıda da söylenmiş. return 0; return 5; gibi kullan o zaman. switch main() içinde olduğundan program kapatılacaktır.

Normalde exit(0); çalışması lazım; zira gerekli libraryler include. Ama undefined reference headerların içinde exit bulunmadı gibi yazmış. O kısma sonra bak bence. Kullandığın compiler için arayabilirsin exit neden böyle diyor diye.

+1


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

Ben exit ile yaptığımda 'e' veya 'E' karakteri girdiğinde çıkış yapıyor. Acaba bir yanlışlık mı var, yoksa ben mi yanlış anladım. Kodu ekliyorum.

quote:

#include <stdio.h>
#include <stdlib.h>
void main()
{
char x;
printf("Press P or p for Prime Numbers\n");
printf("Press L or l for Leibniz Series\n");
printf("Press C or c for combinations\n");
printf("Press E or e for Exit\n");


printf("Enter your choice : ");
x=getchar();

switch(x)
{
case 'p':
case'P':
printf("mk");
break;





case'l':
case'L':
printf("mk");
break;




case'c':
case'C':
break;




case'e':
case'E':

exit(0);




}


getch();


}



G
13 yıl
Yarbay

quote:

Orijinalden alıntı: jervis

hocam aynen yazım undefined reference to 'exit' yazısı çıkıyor
exitin içine 1,0,101,140, denedim hiç biri çkıkmadı

Exit yazarsan tabi undefined olur. 'e' küçük olacak. Ayrıca bu exit sadece süs olmuş. P, L, C haricinde ne yazarsan yaz zaten kapanır. Bunu engellemek için switch i döngü içine almalısın.


Bu mesaja 2 cevap geldi.
S
13 yıl
Binbaşı

Değişken belirtilirken özelliklerin sırasının değişik verilmesi bir şeyi etkiler mi ? Yani int short unsigned a; ile unsigned short int a tam olarak aynımıdır ? Ayrıca float ve double ın usigned alamamasının nedeni ne ?


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

Burayı incelemenizin faydası olabilir.

http://www1.gantep.edu.tr/~bingul/c/index.php?ders=2



M
13 yıl
Yüzbaşı

quote:

Orijinalden alıntı: elektro_gadget

quote:

Orijinalden alıntı: jervis

hocam aynen yazım undefined reference to 'exit' yazısı çıkıyor
exitin içine 1,0,101,140, denedim hiç biri çkıkmadı

Exit yazarsan tabi undefined olur. 'e' küçük olacak. Ayrıca bu exit sadece süs olmuş. P, L, C haricinde ne yazarsan yaz zaten kapanır. Bunu engellemek için switch i döngü içine almalısın.

Naçizane Ekleme yapmak istedim

Bir default: tanımlaması da yapılabilir.



W
13 yıl
Yüzbaşı

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..



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

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;
}


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

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

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





< Bu mesaj bu kişi tarafından değiştirildi garui -- 19 Kasım 2012; 2:21:40 >

G
13 yıl
Yarbay

quote:

Orijinalden alıntı: strahd_von_zarovich

Değişken belirtilirken özelliklerin sırasının değişik verilmesi bir şeyi etkiler mi ? Yani int short unsigned a; ile unsigned short int a tam olarak aynımıdır ? Ayrıca float ve double ın usigned alamamasının nedeni ne ?

Birinci sorunun cevabı evet tam olarak aynı. Diziliş sadece const işaretçilerde fark eder.

float ve double ın unsigned olmasının bir mantığı yok. Tamsayılarda sayıya 1 bit ilave etmek 2 kat büyütürken kayar noktalı sayılarda neredeyse hiç etki etmez. C' ye yeni başlayanlar özellikle double ı büyük sayıları tutmak için kullanırlar. Bu külliyen yanlış. Kayar noktalı sayılarda bit artışı özellikle sayının hassasiyetini arttırmak için yapılır.

Diyelim ki double ı parametre olarak alan bir fonksiyonumuz var ve bu parametrenin mümkün olan en yüksek genişlikle değer almasını istiyoruz. Böylece işlem daha doğru ve hassas şekilde gerçekleşecek. Bunu yapmanın en basit ve etkili yolu parametreye 0 ile 1 arasında bir değer vermektir.

Kullanım amacını doğru anlayınca floating türlerin signed veya unsigned olmasının bir farkı olmadığı anlaşılıyor.



M
13 yıl
Yüzbaşı

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.



X
13 yıl
Onbaşı

Merhaba abiler. Bugün programlamadan sınavımız varda takıldığımız bir kaç problem var. Onların kodlarını öğrenebilirsek süper olur. Sınav saat 3te, o zamana kadar birde deneme şansımız olsa süper olacak.
Şimdi bize
1-4 işlemin kodu(if'li olacak falan)
2-ax^2+bx+c denkleminin köklerini veren kod. delta>0 ise iki kökü vardır kökler -(kök içinde delta -b/2a) ve -(kök içinde delta+b/2a) delta<0 ise kökü yoktur, delta=0 ise bir kökü vardır.
3-notları girilip ortalaması hesaplandıktan sonra ortalaması 0<x<25 ise f, 25<x<50 ise d, 50<x<75 ise c, 75<x<85 ise b
85<x<100 ise a olan kod

Bunları yazabilirseniz çok sevineceğim. Sorular belki vardır ama acelem olduğundan bakacak vakit yoktu kusura bakmayın. Kolay gelsin. :)



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

Ben bilgisayar mühendisliği okumadım, ama kendi başıma kitabını alıp okuduğumda kitabın sonundaki bu tarz soruları kolaylıkla çözebiliyordum.

Şimdi,

1) Vakit vardı, vaktini değerlendirememiş son zamana sıkıştırmışsın
2) Kodlar okuyarak değil, yazarak öğrenilir(diğer türlü ezberlersin ve unutursun)
3) Doğru bölüm tercihi yapıp yapmadığınızı bir daha düşünün.
4) Sorunlarına odaklanmaya çalış, yaptırır gibi değil, belirtir gibi isteyin. Ben şahsen bundan çok rahatsız oluyorum. Cevap verenler de pratik yapmak için veriyor biliyorum. Ama siz yarın bir gün diploma sahibi olacaksınız. Allah aşkına şu basit kodları çıkarmaya bile üşendiniz mi, gidin çalışın. Nedir bu olay? Nasılsa yazan var. Şu kodları yazmam inan daha kısa sürerdi bu mesajı yazmaktan. Düşüne düşüne yazmaya gayret gösterdim.
5) Bunları bir google'da aratsan ne kadar standart sorular olduğunu görecektin fakat ona dahi üşenmişsin. Fakat ne mantıksa yazıp cevabını beklemek daha kolay geliyor. Çünkü armut pişecek ağıza düşecek illa ki.

Bu kadar yazdıktan sonra üzüldüm de yazayım dedim. Yazmaya başladıktan sonra yine vazgeçtim kodları görünce. Çalışın, öğrenci değil misiniz. Yardım almak tamam da kodu istemek nedir? Şu noktada kitlendik deyin, hemen yardımcı olayım.





< Bu mesaj bu kişi tarafından değiştirildi MrOwl -- 19 Kasım 2012; 11:52:35 >
Bu mesaja 1 cevap geldi.