Witam.
Napisałem 2 programy lecz mam z nimi małe problemy pierwszy uruchamia się ale funkcja switch zawsze wybiera case default.
Drugi wyrzuca podczas kompilacji bład expected primary-expression before 'float' . Będe wdzięczny za odnalezienie błędów.
Pozdrawiam.
Program 1:
#include <cstdlib>
#include <iostream>
#include <stdio.h>
using namespace std;
float dodaj(float x, float y);
float odejmij(float x, float y);
float pomnoz (float x, float y);
float podziel (float x, float y);
float dodaj(float x, float y)
{
return x+y;
}
float odejmij(float x, float y)
{
return x-y;
}
float pomnoz(float x, float y)
{
return x*y;
}
float podziel(float x, float y)
{
return x/y;
}
int main(int argc, char *argv[])
{
int n;
float liczba1, liczba2, wynik;
printf("Podaj wartosc pierwszej liczby: ");
scanf("%f", &liczba1);
printf("Podaj wartosc drugiej liczby: ");
scanf("%f", &liczba2);
printf("Wybierz co chcesz zrobic z wprowadzonymi liczbami:\n1.Dodac\n2.Odjac\n3.Pomnozyc\n4.Podzielic\n");
again:
scanf("%i", n);
switch(n)
{
case 1:
{
wynik = dodaj(liczba1, liczba2);
printf("Suma = %f", wynik);
break;
}
case 2:
{
wynik = odejmij(liczba1, liczba2);
printf("Roznica = %f", wynik);
break;
}
case 3:
{
wynik = pomnoz(liczba1, liczba2);
printf("Iloczyn = %f", wynik);
break;
}
case 4:
{
wynik = podziel(liczba1, liczba2);
printf("Iloraz = %f", wynik);
break;
}
default:
{
printf("Wybrano nieistniejaca opcje wybierz ponownie:\n");
goto again;
}
}
system("PAUSE");
return EXIT_SUCCESS;
}
Program 2:
#include <cstdlib>
#include <iostream>
#include <stdio.h>
#include <cmath>
using namespace std;
float w(float x, float y, float z);
float w(float x, float y, float z)
{
return x*pow(y,z-1);
}
int main(int argc, char *argv[])
{
float a1, q, k;
printf("Wprowadz a1, q i numer wyrazu który chcesz obliczyć z ciagu geometrycznego");
scanf("%f%f%f", &a1, &q, &k);
float ak;
ak=w(float a1, float q, float k);
printf("Wybrany wyraz ciagu geometrycznego ma wartosc: %f", ak)
system("pause");
return 0;
}