• 26-04-2020, 01:53:22
    #1
    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.
  • 26-04-2020, 02:05:39
    #2
    BurakCe adlı üyeden alıntı: mesajı görüntüle
    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.
    Uğraşıyorum, yapabilirsem yazarım
  • 26-04-2020, 02:06:04
    #3
    Teşekkür ederim hocam bekliyorum
  • 26-04-2020, 02:37:03
    #4
    BurakCe adlı üyeden alıntı: mesajı görüntüle
    Teşekkür ederim hocam bekliyorum
    Devamı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.

    #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:41:46
    #5
    Hocam teşekkür ediyorum öncelikle ellerinize sağlık struct yapısının içerisinde nasıl kullanacağız peki Diye soruyor. Kardeşim bu yıl kazandı bilgisayar mühendisliğini yeni öğreniyor da 🙄
  • 26-04-2020, 02:49:59
    #6
    BurakCe adlı üyeden alıntı: mesajı görüntüle
    Hocam teşekkür ediyorum öncelikle ellerinize sağlık struct yapısının içerisinde nasıl kullanacağız peki Diye soruyor. Kardeşim bu yıl kazandı bilgisayar mühendisliğini yeni öğreniyor da 🙄
    Yukarıda denemelik struct yapısı açtım, kelimeleri değiştirsin,
    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.
  • 26-04-2020, 03:06:00
    #7
    Hocam çok teşekkür ediyorummm allah razı olsun 🙏🙏👍