24 Ocak 2013 Perşembe

Bubble Sort algoritmasıyla girilen sayıları küçükten büyüğe sıralama





#include "stdafx.h"
#include <iostream>
using namespace std;
void bubblesort(int x);
void bubblesort(int x) {                               //efekanpulatli.blogspot.com      bu program girilen sayilari kucukten buyuge siralar. yazim dili c++;
int * sayilar =  new int [x];                     // girilen degere gore yeni dizi olusturma;
int b,c=0;
do {
cin >> b;
sayilar[c] = b;
c++;
}while(c<x);

int y;
for(int i=0;i<x;i++) {
for(int a=0;a<(x-1);a++) {
if(sayilar[a] > sayilar[a+1]) {
y = sayilar[a+1];
sayilar[a+1] = sayilar[a];
sayilar[a] = y;
}
}
}
cout << "Sayilarin Kucukten buyuge dizilisi :" << endl;
for(int i=0;i<x;i++) {
cout << sayilar[i] << endl;
}
}
int main()
{
int a;
cout << "kac sayi gireceginizi yazin" << endl;
cin >> a;
bubblesort(a);
system("pause");
return 0;
}

23 Ocak 2013 Çarşamba

35 Faktoriyele kadar faktoriyel hesaplama


#include "stdafx.h"
#include <iostream>
using namespace std;

void olustur(int x) {               // efekanpulatli.blogspot.com       35 faktoriyele kadar faktoriyel hesaplama
int fact[1000]={1};             // dikkat 35 faktoriyelden sonrasini hesaplamaz.
int elde=0,x2;
      for(;x>=1;x--) {  // x 1 e kadar for dongusu dondurur
   for(int a=0;a<44;a++) { //her dizi elemanını çarpar
if(elde!=0) { //  elde 0 dan farklıysa burayı çalıştır
if(fact[a+1] == 0) {
int b =  (fact[a] * x) + elde;
fact[a] = ((fact[a] * x) + elde) % 10;
fact[a+1] = b / 10;
elde=0;
a++;

} else if(fact[a+1] != 0) {        
int b =  (fact[a] * x) + elde;
fact[a] = ((fact[a] * x) + elde) % 10;
elde = b / 10;
}
}
else if((fact[a] * x) < 10 && elde ==0) {
fact[a]*=x;
} else if((fact[a] * x) > 9 && elde == 0){
elde = (fact[a] * x) / 10;
fact[a] = (fact[a] * x) % 10;

}
}
  }
  for(int i=40;i>=0;i--) {         // başını 0 a kadar yazdırma
  if(fact[i]!=0) { x2 = 0; }
  if(x2==0) {
  cout << fact[i] ; } }

}

int main()
{
int a ;
cout << "enter number which will be fact" << endl;
cin >> a;
olustur(a);
system("pause");
return 0;
}

19 Ocak 2013 Cumartesi

On tabanındaki sayıyı iki tabanına çevirme



#include "stdafx.h"
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
int taban[30],a=0;
void tab(int x) {
do{
if(x%2==0)  { taban[a] = 0 ;}  else { taban[a]= 1; };
        x=x/2;
        a++;
}while(x/2!=0);
taban[a] = 1;
}
int main()
{
    int x;
    cin >> x;
tab(x);
for(;a>=0;a--) {
    cout << taban[a] ;
}
system("pause");
return 0;
}

Ebob/Ekok/Permutasyon alma





#include "stdafx.h"              // efekanpulatli ebob ekok permutasyon
#include <iostream>
 using namespace std;
 int fact(int a) {                    //factoriyel alma
int total=1;
for(;a>0;a--)
total*=a;
return total;
 }
 int min(int a,int b) {                       //2 sayinin minimumu
if(a<b)
return a;
else return b;
 }

void ebob() {                                        // void ebob();
cout << "ebobu alincak 2 sayiyi girin" << endl;
int a,b,valebob;
cin >> a >> b;

for(int c=1;c<=min(a,b);c++) {           //girdigimiz degerlerin her 2 sinide c sayisi kalansiz bolene kadar deger atiyor
if(a%c == 0 && b%c == 0)
valebob = c;                      // dikkat burda break komutu kullanmadık cunku en buyugunu ariyoruz
}
cout << "\n" << a << " ve " << b << "sayilarinin en buyuk ortak boleni :" << valebob << "dir." << endl;
}
void ekok() {                                        // void ekok();
int a,b,valekok=0;
cout << "ekoku alinacak 2 sayiyi girin" << endl;
cin >> a >> b ;

for(int c=1;c<=a*b;c++) {      
if(c%a == 0 && c%b == 0) {             // c sayisini girdigimiz degerlerden her 2 side kalansız boluyorsa valekok e c sayisini atiyoruz
valekok = c;
}
if(valekok!=0)            //ilk degeri aldiginda duruyoruz cunku en kucuk unu arıyoruz
break;
}
cout << a << " ve " << b << " sayilarinin en kucuk ortak kati :" << valekok << "dir." << endl;
}
void permutasyon() {
int a,b,c;
cout << "permutasyon icin gerekli 2 sayiyi girin" << endl;
cin >> a >> b;
cout << a<< "'nin" << b << "lisi :" << fact(a) / fact(a-b) << "dir." << endl;

}
int main() {
int secim;
cout << "islem yapmak istediginiz secenegi yazin ve onaylayin:" << endl;
cout << "1:ebob;2:ekok;3:permutasyon" << endl;
cin >> secim;

switch(secim) {
case 1: {
ebob(); break; };
case 2: { ekok(); break;};
case 3:{ permutasyon(); break;};
default:{cout << "1,2 yada 3 secimini yapmaliydiniz" << endl; break;}


}
system("pause");
return 0;

}