C'de Taban değişimi

Bu başlık kilitlidir. Yeni mesajlar gönderilemez veya mevcut mesajlar düzenlenemez.
SLiM_BoY
27-12-2004, 00:33   |  #1  
SLiM_BoY avatarı
OP Yeni Üye
Teşekkür Sayısı: 0
20 mesaj
Kayıt Tarihi:Kayıt: Ara 2004

1’den 256’ya kadar olan onluk sistemdeki sayıların ikilik,sekizlik ve onaltılık sistemlerdeki karşılıklarını
yazınız.

beyLer bunun programını yapmam Lazım..uğraştım fakat yapamadım..2’Lik sistemdekini diğer tabanlAra çeviren program yazdım..Fakat bu istenen programı yapamıyorum..yardım ederseniz sevinirim..

fonsiyonları,dizileri(başlangıç olarak),döngüleri biliyorum..

switch'le yapmam lazım..mesela :

1.Sayıyı 2lik sisteme çevir
2.Sayıyı 8lik sisteme çevir
3.Sayıyı 16lık sisteme çevir..

program benden soracak seçeneğimi..daha sonra işlemi yapacak..

lütfen yardım edin [:0]KarizmaUykulu[V]Üzgün

SeRBoY_WHiTe
03-01-2005, 14:29   |  #2  
Yıllanmış Üye
Teşekkür Sayısı: 0
390 mesaj
Kayıt Tarihi:Kayıt: Tem 2004

//Yazan:SeRBoY_WHiTe
//Tarih:02.01.2005
#include<string.h>
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#include<math.h>
void main() {
clrscr();
char mod[9]={0},sec;
int  i,x,y,uzunluk;
do {
clrscr();
printf("1)<<< 2'lik taban karsilinigi gor>>>\n");
printf("2)<<< 8'lik taban karsiligini gor>>>\n");
printf("3)<<<16'lik taban karsiligini gor>>>\n");
printf("<<<<<<<<<<<<<<<<ESC>>>>>>>>>>>>>>>>>\n");
printf("Bir sayi giriniz : ");
scanf ("%d",&x);
y=x;
printf("Seciminiz...<<<<1/2/3/ESC(ÇIKIŞ)>>>>  ");

   sec=getch();
   switch(sec) {
      case '1' : for(i=0;i<9;i++) {
                    mod=x%2;
                    x=x/2;
                    x=floor(x);
                 }
                 printf("\n2'ilk  tabanda %d sayısı = ",y);
                 for(i=8;i>=0;--i)
                    printf("%d",mod);
                 break;

      case '2' : printf("\n8'lik  tabanda %d sayısı = %o",x,x);
                 break;

      case '3' : printf("\n16'lk tabanda %d sayısı = %x",x,x);
                 break;

      case  27 : exit(1);

      default  : printf("FatalError : Kullanıcı Hatası!!!");
   }
   getch();
}while(sec!=27);
}
//Kardeş verdigin bilgilere uyarınca sana boyle bir program hazırladım.
//Basit birşey fazla test yapmadım o yuzden.
//İşini görür umarım...
//Muhabbetle...

Son Düzenleme: SeRBoY_WHiTe ~ 03 Ocak 2005 14:37
SeRBoY_WHiTe
03-01-2005, 14:45   |  #3  
Yıllanmış Üye
Teşekkür Sayısı: 0
390 mesaj
Kayıt Tarihi:Kayıt: Tem 2004

Buradaki kodları notpad e kopyalayıp cpp olarak kaydedersen bu formun yazı stilinden kaynaklanan simetri hataları duzelir otomatik olarak. Takıldıgın yer olursa gene sorarsın programla ilgili.
Kolay gelsin...

ugurbostanci
03-01-2005, 17:54   |  #4  
Yıllanmış Üye
Teşekkür Sayısı: 0
247 mesaj
Kayıt Tarihi:Kayıt: Eyl 2004

#include<string.h>
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#include<math.h>
void main() {
char mod[9]={0},sec;
int i,x,y,uzunluk;
do {
clrscr();
printf("1)<<< 2'lik taban karsilinigi gor>>>\n");
printf("2)<<< 8'lik taban karsiligini gor>>>\n");
printf("3)<<<16'lik taban karsiligini gor>>>\n");
printf("<<<<<<<<<<<<<<<<ESC>>>>>>>>>>>>>>>>>\n");
printf("Bir sayi giriniz : ");
scanf ("%d",&x);
y=x;
printf("Seciminiz...<<<<1/2/3/ESC(ÇIKIŞ)>>>> ");

sec=getch();
switch(sec) {
case '1' : for(i=0;i<9;i++) {
mod=x%2;
x=x/2;
x=floor(x);
}
printf("\n2'ilk tabanda %d sayısı = ",y);
for(i=8;i>=0;--i)
printf("%d",mod);
break;

case '2' : printf("\n8'lik tabanda %d sayısı = %o",x,x);
break;

case '3' : printf("\n16'lk tabanda %d sayısı = %x",x,x);
break;

case 27 : exit(1);

default : printf("FatalError : Kullanıcı Hatası!!!");
}
getch();
}while(sec!=27);
}

ugurbostanci
03-01-2005, 17:57   |  #5  
Yıllanmış Üye
Teşekkür Sayısı: 0
247 mesaj
Kayıt Tarihi:Kayıt: Eyl 2004

//Yazan:SeRBoY_WHiTe
//Tarih:02.01.2005

yanlışlıkları düzeltmeyi çalıştım ve benim naklettiğim turbo c de çalıştı, tebrikler ve teşekkürler SeRBoY_WHiTe

Haydi kolay gelsin...

SeRBoY_WHiTe
17-02-2005, 16:58   |  #6  
Yıllanmış Üye
Teşekkür Sayısı: 0
390 mesaj
Kayıt Tarihi:Kayıt: Tem 2004

Önemli degil. Ben tesekkur ederim. İsim bu ne yapayım :) ...

Son Düzenleme: SeRBoY_WHiTe ~ 17 Şubat 2005 16:59