• Web sitemizin içeriğine ve tüm hizmetlerimize erişim sağlamak için Web sitemize kayıt olmalı ya da giriş yapmalısınız. Web sitemize üye olmak tamamen ücretsizdir.
  • Sohbetokey.com ile canlı okey oynamaya ne dersin? Hem sohbet et, hem mobil okey oyna!
  • Soru mu? Sorun mu? ''Bir Sorum Var?'' sistemimiz aktiftir. Paylaşın beraber çözüm üretelim.

1. ve 2. En Büyük ve En Küçük Sayıları, Negatif-Pozitif Olduğunu Bulan...

Üyelik Tarihi
7 Ocak 2015
Konular
4,091
Mesajlar
4,274
MFC Puanı
40
Progarmın Özellikleri:

> Kullanıcıdan önce kaç sayı gireceğini sorar
> Sonra o kadar sayıya değer ister
> Girilen sayılardan:
- 1.En Büyük Sayıyı Bulur
- 2.En Büyük Sayıyı Bulur
- 1.En Küçük Sayıyı Bulur
- 2.En Küçük Sayıyı Bulur
- Girilen Sayılardan negatif, pozitif ve 0 olanları gösteririr
- Kaç negatif, pozitif ve 0 girildiğni yazar


kodlar:
Kod:
/*
>> PROGRAMLAYAHN: lavara123
>> TARİH: 23.02.2014
>> PROGRAMIN ÖZELLİKLERİ:
-Kullanıcıdan önce kaç sayı gireceğini sorar
-sonra o kadar sayıya değer ister
-girilen sayılardan:
*1.En Büyük Sayıyı Bulur
*2.En Büyük Sayıyı Bulur
*1.En Küçük Sayıyı Bulur
*2.En Küçük Sayıyı Bulur
*Girilen Sayılardan negatif, pozitif ve 0 olanları gösteririr
*Kaç negatif, pozitif ve 0 girildiğni yazar

*/
#include <conio.h>//_getch() fonksiyonunu kullanabilmek için
#include <iostream>//ana kütüphane

using namespace std;

int main(int argc, char *argv[])
{
setlocale(LC_ALL, "Turkish");//dil fonksiyonundan türkçe dilini çağırıyoruz(türkçe karakterleri kullanabilmek için)
//yukarıdaki fonksiyonda hata alırsanız kütüphane olarak <locale.h> ekleyin.
int y,d,de,n,p,z,max[3],min[3],gecici1,fr;//tam sayı değişkenlerimizi tanımlıyoruz
//yukarda fr değişkenimizi for döngülerinde kullanacağız

//__sıfıra eşitlemeler -basla-__
p = 0;
n = 0;
z = 0;
max[0] = -1410065407;//max[0]'ı int değişkeninin en küçük alabileceği degere eşitliyoruz çünkü negatif
//sayı girilirse onlarıda işlemlere katmak için
max[2] = -1410065407;//yukarıdaki max[0] şeklinde
for(fr=0;fr<4;fr++)//max[] ve min[] dizilerini for döngüsü sıfıra eşitliyeceğiz
{
min[fr] = 0;
if(fr==0 || fr==2)//eğer fr=0 veya fr=2'ye:
continue;//aşağıya uğramadan başa dönecek(bunu neden kullandık çünkü
//yukarda max[0] ve max[2]'ye lazım olna negatif degerleri atamıştık)
max[fr] = 0;
}
//__sıfıra eşitlemeler -*bit*-__

int x['y'];//bir dizi tanımladık ve dizi boyutuna y dedik

basla://eğer kodların bir yerinde goto basla; komutuna rastlarsa buraya geri dönüp bunun altından tekrar başlayacak
system("CLS");//Ekran Silme Komututudur
cout << "...Lütfen Karşılastırmanın Tam Teşeeküllü Olmasını Istiyorsanız: \nEn Az 4 Sayı Giriniz...\n\n";
cout <<"Kac Sayi Girilecek.: ";
cin >> d;//d değişkenine kullanıcıdan değer alıyoruz
if(d < 4)//eğer d küçükse 4'ten(4 veya 4'ten büyük sayı girilmesini istiyoruz):
{
cout << "\nLutfen Sayiniz 4'den Kucuk Olmasin\n";
system("PAUSE");
goto basla;//yukardaki basla: altına gider
}
y = d;//y değişkenimizi kullanıcıdan aldığımı d değişkenine eşitledik(çünkü x[] bir dizi idi ve y kadar boyutu vardı)
system("CLS");
cout << endl;

//__sayıları almaya -basla-__
for(fr=0;fr<d;fr++)//fr'yi 0'a eşitliyoruz; fr küçük olduğu sürece d'den;fr'yi 1 artır
{
cout << fr+1 << ". Sayi..: ";//fr+1 dedik çünkü fr 0'dan başıyor 0.sayı iyi olmayacağı için 1.sayı yazdırmak için +1 dedik
cin >> x[fr];//x[] dizine fr d olasıya kadar sayı istiyecek
cout << endl;
}
//__sayıları alma -*bit*-__


//__1. büyük sayı bul -basla-__
for(fr=0;fr<d;fr++)
{
if(x[fr]>=max[0])//x[fr] büyükse veya eşitse max[0]'a:
{
max[0]=x[fr];//max[0]'ı x[fr]'ye eşitle
max[1]=fr+1;//max[1]'i fr+1'e eşitle(neden +1 derseniz çünkü 0.Sayi güzel durmayacağı için)
}
}
//__1. büyük sayı bul -*bit*-__

gecici1 = max[0];//gecici1 değişkenimizi max[0]'a eşitliyoruz

//__2. büyük sayı bul -basla-__
for(fr=0;fr<d;fr++)
{
if(x[fr]>=max[2])//eğer x[fr] büyük veya eşitse max[2]'ye:
{
if(x[fr] < max[0])//eğer x[fr] küçükse max[0]'dan
{
max[2] = x[fr]; //max[2]'yi x[fr]'ye eşitle
max[3] = fr+1; //max[3]'ü eşitle fr+1'e
}
}
}
//__2. büyük sayı bul -*bit*-__

//__1. küçük sayı bul -basla-__
for(fr=0;fr<d;fr++)
{
if(x[fr]<gecici1)//eğer x[fr] küçükse gecici1'den:
{
gecici1 = x[fr]; //gecici1'i x[fr]'ye eşitle
min[0] = x[fr]; //min[0]'ı x[fr]'ye eşitle
min[1] = fr+1; //min[1]'i fr+1'e eşitle
}
}
//__1. küçük sayı bul -*bit*-__

gecici1 = max[0];//gecici1 değişkenimizi max[0]'a eşitliyoruz birazdan lazım olacak(çünkü yukardaki for döngüsünde yeni bir değer aldı bize en büyük sayının değerini alması gerekiyor)

//__2. küçük sayı bul -basla-__
for(fr=0;fr<d;fr++)
{
if(x[fr]<gecici1 && x[fr] > min[0])//x[fr] küçükse gecici1'den ve x[fr] büyükse min[0]'dan:
{
gecici1 = x[fr]; //gecici1'İ x[fr]'ye eşitliyoruz
min[2] = x[fr]; //min[2]'yi x[fr]'ye eşitliyoruz
min[3] = fr+1; //min[3]'ü fr+1'E eşitle
}
}
//__2. küçük sayı bul -*bit*-__

system("CLS");

cout << "\nToplam girilen sayi: " << fr << endl;//fr d'olasıya kadar 1 artırıldığı için fr=d olmuş olur bu yüzden fr ile toplam kaç sayı girildiğini gösterebiliriz

//__Pozitif-Negatif bulma -basla-__
for(de=0;de<fr;de++)//de=0;de küçük olduğu sürece fr'den;de'yi 1 artır:
{
if(x[de] > 0)//x[de] büyükse 0'dan(yani pozitif ise):
{
p++;//p değişkenine 1 ekle(kaç pozitif sayı olduğunu saymak için)
cout << endl << endl;
cout << de+1 << ". Sayi = " << x[de];
cout << " > pozitif bir sayidir." << endl;
}
else if(x[de] == 0)//x[de] 0'a eşitse:
{
z++;//z değişkenine 1 ekle(kaç sıfır sayısı girildiğini saymak için)
cout << endl << endl;
cout << de+1 << ". Sayi = " << x[de];
cout << " > negatif veya pozitif degildir." << endl;
}
else if(x[de] < 0)//x[de] küçükse 0'dan(yani negatif ise):
{
n++;//n değişkenine 1 ekle(kaç negatif sayı olduğunu saymak için)
cout << endl << endl;
cout << de+1 << ". Sayi = " << x[de];
cout << " > negatif bir sayidir." << endl;
}
}
//__Pozitif-Negatif bulma -*bit*-__

cout << endl << endl;

if(z > 1 || z == 1)//z(yani kaç sıfır olduğunu sayan değişken) büyükse 1'den veya eşitse 1'e(çünkü 0 sayısı hiç yoksa aşağıdaki
//yazıyı boşuna yazdırmaya gerek yok):
{
cout << "Toplam " << p << " pozitif, " << n << " negatif ve " << z << " tanimsiz sayi girdiniz\n";
}
else//yukardaki if gerçekleşmediğinde:
{
cout << "Toplam " << p << " pozitif ve " << n << " negatif sayi girdiniz\n";
}

cout << "1. En Buyuk Sayi: " << max[1] << ".Sayi = " << max[0] << "\n";
cout << "2. En Buyuk Sayi: " << max[3] << ".Sayi = " << max[2] << "\n\n";
cout << "1. En Kucuk Sayi: " << min[1] << ".Sayi = " << min[0] << "\n";
cout << "2. En Kucuk Sayi: " << min[3] << ".Sayi = " << min[2] << "\n";
_getch();//normalde bunu getch(); olarak yazardık neden böyle derseniz aynı işlmi görürler bu daha hızlı derlenir
return 0;//çıkış
}
 
Üst