Merhabalar arkadaşlar bir ödevi var kardeşimin yapamadık
Soru şu ;
Klavyeden girilen basamak sayısı bilinmeyen bir sayıyı struct kullanılarak Metine dönüştüren C kodunu yazınız. Yardımcı olabilecek var mı?
Teşekkür ederim.
Struch kullanarak Metine dönüştürme ?
6
●157
- 26-04-2020, 02:05:39Uğraşıyorum, yapabilirsem yazarımBurakCe adlı üyeden alıntı: mesajı görüntüle
- 26-04-2020, 02:37:03Devamını kendine göre düzenler, struct çok basit bir şey zaten. orayı kendi yapar. fonksiyonu yazdım ben. yüzü ekledim on yirmi otuzları ekledim doksana kadar. yapacağı tek şey bin yazacak , on bin yazacak türkçe bir şekilde birde başa 0 gelirse pass yapacak.BurakCe adlı üyeden alıntı: mesajı görüntüle
#include <stdio.h> #include <string.h> struct zaman_yapisi { int saat,dakika,saniye; }yapi_degiskeni; int sayilar[100]; int eklenecekindex=0; int suankiDeger=0; int main(void) { int a=234; int baslangic_basamak=1; while(a/baslangic_basamak!=0){ baslangic_basamak=baslangic_basamak*10; } printf("sayi basamagi %d\n",baslangic_basamak); while(baslangic_basamak>1){ baslangic_basamak=baslangic_basamak/10; suankiDeger=a/baslangic_basamak; printf("suanki deger %d\n",suankiDeger); printf("baslangic basamak %d\n",baslangic_basamak); sayilar[eklenecekindex]=suankiDeger*baslangic_basamak; a=a-suankiDeger*baslangic_basamak; eklenecekindex=eklenecekindex+1; } int arttir=0; while(eklenecekindex>arttir){ //printf("%d\n",sayilar[eklenecekindex]); sayilarinBasamaklariniBul(sayilar[arttir]); arttir=arttir+1; } return 0; } int sayilarinBasamaklari(int sayisi, int basamagi){ if(basamagi!=10){ if( sayisi ==1){ printf("bir"); }else if( sayisi ==2){ printf("iki"); }else if( sayisi ==3){ printf("uc"); }else if( sayisi ==4){ printf("dort"); }else if( sayisi ==5){ printf("bes"); }else if( sayisi ==6){ printf("alti"); }else if( sayisi ==7){ printf("yedi"); }else if( sayisi ==8){ printf("sekiz"); }else if( sayisi ==9){ printf("dokuz"); } if(basamagi==100){ printf("yuz"); } }else{ if(sayisi==1){ printf("on"); } else if(sayisi==2){ printf("yirmi"); } else if(sayisi==3){ printf("otuz"); } else if(sayisi==4){ printf("kirk"); } else if(sayisi==5){ printf("elli"); } else if(sayisi==6){ printf("altmis"); } else if(sayisi==7){ printf("yetmis"); } else if(sayisi==8){ printf("seksen"); } else if(sayisi==9){ printf("doksan"); } } printf(" "); } int sayilarinBasamaklariniBul(int sayi){ int basliyoruzBasamak=1; while(sayi/basliyoruzBasamak!=0){ basliyoruzBasamak=basliyoruzBasamak*10; } basliyoruzBasamak=basliyoruzBasamak/10; sayilarinBasamaklari(sayi/basliyoruzBasamak,basliyoruzBasamak); } - 26-04-2020, 02:49:59Yukarıda denemelik struct yapısı açtım, kelimeleri değiştirsin,BurakCe adlı üyeden alıntı: mesajı görüntüle
struct zaman_yapisi
{
int saat,dakika,saniye;
}yapi_degiskeni;
yapi_degiskeni.saat=15;
ille yapi değişkenindeki saati tanımlıyoruz ardından
printf("%d",yapi_degiskeni.saat );
ile yazdırıyoruz. Mesela kullanıcının girdiği sayıyı buraya kaydedersiniz. Basamak değerinide buraya kaydedersiniz fonksiyon kullanmak yerine buradan çağırısınız. İnanın çok basit bir şey, internete baksın max 3dk harcar anlamak için. Aslında struct yeine normal değişkende kullanılır, yalnızca öğretmeni struct dediğinden dolayı struct kullanacak, gereklilik olduğundan değil.