Program niby działa ale wyskakuje błąd kiedy w linii pleceń(zaraz za nazwą programu) nie wpiszę danych lub wpiszę jedną. Chciałbym temu jakoś zaradzić w taki sposób, że kiedy użytkownik ich nie wpisze lub wpiszę tylko jedną to program ponownie poprosi o wpisanie danych lub jednej pominiętej, tylko niestety nie wiem jak temu zaradzić :/
Z góry dziękuje za pomoc :)
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
float silnia(float n) /*obliczanie silni z n*/
{
int i;
float wynik = 1;
for(i=2; i<=n; i++)
wynik *= i;
return wynik;
}
double XdoN(float x, float n) /*obliczanie x do potegi n*/
{
return pow(x,n);
}
double szereg(float x, float nliczba) /*obliczanie szeregu Maclaurina*/
{
double suma=0;
int n;
for(n=0;n<=nliczba;n++)
{
suma=suma+pow((-1),n)*(XdoN(x,2*n)/silnia(2*n));
}
return suma;
}
int main(int argc, char*argv[])
{
float x=0,n=0;
int i=0;
float wynik;
sscanf (argv[1],"%f",&x); /*wprowadzenie linii polecen*/
sscanf (argv[2],"%f",&n);
printf("argc=%d\n", argc);
for(i=0; i<argc; ++i) {
printf("argv[%d]=%s\n", i, argv [i]);
}
printf("x=%f\n",x);
printf("n=%f\n",n);
printf("silnia=%f\n",silnia(n));
printf("x do n=%f\n",XdoN(x,n));
printf("szereg=%f\n",szereg(x,n));
return 0;
}