SILNIA język C

Rraaffkkaa
Użytkownik
Użytkownik
Posty: 28
Rejestracja: 29 lis 2010, o 00:13
Płeć: Mężczyzna
Lokalizacja: Krk/Pionki
Pomógł: 3 razy

SILNIA język C

Post autor: Rraaffkkaa »

Zad1. Napisz funkcje liczącą silnie i program ją wykorzystujący.
mam coś takiego ale nie widzi mi sie coby to było trafne :)

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

double silnia()
{
int k,s;
printf("Podaj liczbe z ktorej chcesz obliczyc silnie\n");
scanf("%d",&k);
while(k!=0)
{
if(k<0){
printf("Nie moge liczyc silni z liczby ujemnej!!!\n");}
if(k>0){
s=k*silnia(k-1);
printf("Silnia z %d wynosi %d\n",k,s);
}
else printf ("Silnia z 0 wynosi 1\n");
return 0;
}

int main()
{
int wybor;
double d;
int koniec = 0;
printf("Wybierz co chcesz robic\n1-Liczyc silnie\n2-Opuscic program\n");
scanf("%d",&wybor);
while(koniec!=0)
{
switch(wybor)
{
case 1: d=silnia();
break;
}
scanf("%d",&koniec);
}
return 0;
}

i mam error in function 'silnia'
pomocy!!!
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

SILNIA język C

Post autor: Afish »

A masz pojęcie, co się dzieje w kodzie? Konkretniej, to czy rozumiesz błąd, który pokazuje kompilator?
Rraaffkkaa
Użytkownik
Użytkownik
Posty: 28
Rejestracja: 29 lis 2010, o 00:13
Płeć: Mężczyzna
Lokalizacja: Krk/Pionki
Pomógł: 3 razy

SILNIA język C

Post autor: Rraaffkkaa »

temat zamknięty chyba że ktoś ma inne propozycje;a co do tamtego poprzedniego to nawet nie czytajcie hehe.

#include<stdio.h>

unsigned long silnia (int k)//definicja funkcji silnia
{
if(k<=1)
return(1);
else
return(k*silnia(k-1));
}
int main()
{
int n;
unsigned long s;
printf("Program obliczy silnie podaj liczbe naturalna n
");
scanf("%d",&n);
printf("Podałes n=%d
",n);
if(n<0) printf("Podales liczbe ujemna,nie moge liczyc silni z liczby ujemnej!!!
");
else
{
s=silnia(n);
printf("Silnia z n=%d to %d",n,s);
}
return 0;
}
ODPOWIEDZ