c programlama sorularıma yardımcı olabilecek var mı?

Bu konuyu okuyanlar

leoness0

Öğrenci
Katılım
27 Aralık 2020
Mesajlar
4
Reaksiyon puanı
0
Puanları
1
Yaş
21
Merhaba üni 1 makine mühendisliğindeyim malum uzaktan eğitimle kısıtlı öğrenim alabiliyorum şu ödevde yardımcı olursanız sevinirim.

3-) x ve n değerleri klavyeden girildiğinde aşağıdaki dizinin sonucunu hesaplayan bir program yazınız? (Fonksiyon yapılarını kullanınız)

1+x^1+x^2+x^3+x^4+……………………+x^n


4-) Klavyeden “-1” girilene kadar kullanıcıdan pozitif tam sayılar isteyen ve girilen sayılar içerisinde en küçük ve en büyük TEK sayıları bulup ekrana yazdıran bir C programını yazınız?
 

hakaya

Asistan
Katılım
22 Temmuz 2013
Mesajlar
234
Reaksiyon puanı
109
Puanları
43
Merhaba,

Klavyeden -1 girilene kadar dizini hesaplıyor. Ama henüz en büyük ve en küçük tek sayıları bulmuyor. :)

Kolay gelsin.

#include <stdio.h>
#include <math.h>

int main()
{
while (1)
{
int x, n, toplam = 0;
printf("X giriniz: ");
scanf("%d", &x);
if (x == -1) break;
printf("N giriniz: ");
scanf("%d", &n);
for (int i = 0; i <= n; i++)
{
toplam += pow(x, i);
}
printf("Sonuç: %d \n", toplam);
}
return 0;
}
 

leoness0

Öğrenci
Katılım
27 Aralık 2020
Mesajlar
4
Reaksiyon puanı
0
Puanları
1
Yaş
21
ben şöyle yaptım ama yine bir sorun var. Bazı sayılarda 0'ı en küçük alıyor ekte bıraktım.


#include <stdio.h>
#include <math.h>

int main()
{
int i,k,sayac=0,sayi[200];

for(i=0;i<=sayac;i++)
{
printf("pozitif bir tam sayi giriniz:");
scanf("%d",&sayi[sayac]);
if(sayi[sayac]<0 && sayi[sayac]!=-1)
{
return;
}
if(sayi[sayac]!=-1)
{
sayac++;
}

}
int min=0,max=0;

for(i=0;i<sayac;i++)
{
if(sayi%2!=0)
{
if(i==0)
{
min=sayi;
}

if(sayi>max)
{
max=sayi;
}
if(sayi<min)
{
min=sayi;
}
}

}
printf("en kucuk sayi:%d",min);
printf("\n");
printf("en buyuk sayi:%d",max);
return 0;
}
 

Ekli dosyalar

  • Ekran Görüntüsü (178).png
    Ekran Görüntüsü (178).png
    166.9 KB · Görüntüleme: 86

hakaya

Asistan
Katılım
22 Temmuz 2013
Mesajlar
234
Reaksiyon puanı
109
Puanları
43
Bunu dener misin?

Kod:
#include <stdio.h>

int main()
{
    int min = 0, max = 0, giris;
 
    while(1)
    {
        printf("Bir sayı giriniz: ");
        scanf("%d", &giris);

        if(giris == -1) break;
        if(giris < 1) continue;

        if(giris%2 == 1)
        {
            if (min == 0) min = giris;
            if (giris < min) min = giris;
            if (max < giris) max = giris;
        }
    }
    printf("En küçük sayı: %d, en büyük sayı: %d \n", min, max);  
    return 0;
}
 

leoness0

Öğrenci
Katılım
27 Aralık 2020
Mesajlar
4
Reaksiyon puanı
0
Puanları
1
Yaş
21
Çok teşekkür ederim sorunsuz çalışıyor.
 

leoness0

Öğrenci
Katılım
27 Aralık 2020
Mesajlar
4
Reaksiyon puanı
0
Puanları
1
Yaş
21
Şu ilk sorunun koduna da bir baka bilir misin fonksiyon yapıları falan demiş ama olmuş mu bu



#include <stdio.h>
#include <stdlib.h>

int usHesapla(int taban, int us);
int toplamHesapla(int x, int n);

int main ()
{
int x, n, toplamSonuc;

printf ("x degerini giriniz: ");
scanf ("%d", &x);

printf ("n degerini giriniz: ");
scanf ("%d", &n);

toplamSonuc = toplamHesapla(x, n);
printf ("Toplam Sonucu = %d", toplamSonuc);

return 0;
}

int usHesapla(int taban, int us)
{
int sonuc = 1;
for (int i = 1; i <= us; i++)
{
sonuc = sonuc * taban;
}
return sonuc;
}

int toplamHesapla(int x, int n)
{
int us, toplam = 0;
for (int i = 0; i <= n; i++)
{
us = usHesapla(x, i);
toplam = toplam + us;
}
return toplam;
}
 

Son mesajlar

Üst