I have a problem with functions with parameters.
I wrote a program that has different tasks with no parameters (marked as # 1)
Now I have to do the same program with the parameters (which I tried No. 2)
Unfortunately, the error is in some (program 2 lines 46 and 47) that I do not know how to remove. And now: Does this code 2 make any sense as doing it with a function with parameters? How so, how to change it to work?
1.
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void kalkulator()
{int a,b;
char zn;
cout<<"Podaj a= ";
cin>>a;
cout<<"Podaj b= ";
cin>>b;
cout<<"Podaj znak: ";
cin>>zn;
switch(zn)
{
case '+':cout<<"suma="<<a+b<<endl; break;
case '-':cout<<"roznica="<<a-b<<endl; break;
case '*':cout<<"mnozenie="<<a*b<<endl; break;
case '/':if (b!=0) {cout<<"iloraz="<<a/b<<endl; break;}
else {cout<<"Nie ma rozwiazania"<<endl; break;}
default: cout<<"Zly znak"<<endl;
}
}
void szlaczek()
{
for(int i=1;i<=70;i++)
cout<<"*";
cout<<endl;
}
void losowaniegra()
{
int los,pocz,kon;
cout<<"Witaj w grze za duzo za malo!"<<endl;
cout<<"Podaj poczatek przedzialu: ";
cin>>pocz;
cout<<"Podaj koniec przedzialu: ";
cin>>kon;
srand(time(NULL));
los=rand()%pocz+kon;
int il=0,odp;
do
{
cout<<"Podaj liczbe z przedzialu ktory wpisales: "<<endl;
cin>>odp;
il++;
if(odp==los) cout<<"Brawo,odpowiedziales za "<<il<<" razem!"<<endl;
else if (odp>los) cout<<"za duzo"<<endl;
else cout<<"za malo"<<endl;
}while(odp!=los);
}
void sumacyfr()
{
int liczba,suma;
cout<<"Podaj liczbe trzycyfrowa: ";
cin>>liczba;
if(liczba>99)
{
suma = (liczba%10)+(liczba/10)%10+(liczba/100)%10;
cout<<"Suma cyfr tej liczby wynosi: "<<suma<<endl;
}
else
{
cout<<"Podana liczba nie jest trzycyfrowa,podaj jeszcze raz: ";
cin>>liczba;
suma = (liczba%10)+(liczba/10)%10+(liczba/100)%10;
cout<<"Suma cyfr tej liczby wynosi: "<<suma<<endl;
}
}
int main()
{
kalkulator();
szlaczek();
losowaniegra();
szlaczek();
sumacyfr();
szlaczek();
return 0;
}
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <time.h>
using namespace std;
int szlaczek()
{
for(int i=1;i<=70;i++)
cout<<"*";
cout<<endl;
}
int kalkulator(int a,int b,char zn)
{
return a,b;
}
int losowaniegra(int los,int pocz,int kon)
{
return los;
}
int sumacyfr(int liczba,int suma)
{
return suma;
}
int main()
{
int a,b;
char zn;
cout<<"Podaj a= ";
cin>>a;
cout<<"Podaj b= ";
cin>>b;
cout<<"Podaj znak: ";
cin>>zn;
switch(zn)
{
case '+':cout<<"suma="<<a+b<<endl; break;
case '-':cout<<"roznica="<<a-b<<endl; break;
case '*':cout<<"mnozenie="<<a*b<<endl; break;
case '/':if (b!=0) {cout<<"iloraz="<<a/b<<endl; break;}
else {cout<<"Nie ma rozwi?zania"<<endl; break;}
default: cout<<"Z?y znak"<<endl;
}
}
szlaczek();
{
int los,pocz,kon;
cout<<"Witaj w grze za duzo za malo!"<<endl;
cout<<"Podaj poczatek przedzialu: ";
cin>>pocz;
cout<<"Podaj koniec przedzialu: ";
cin>>kon;
srand(time(NULL));
los=rand()%pocz+kon;
int il=0,odp;
do
{
cout<<"Podaj liczbe z przedzialu ktory wpisales: "<<endl;
cin>>odp;
il++;
if(odp==los) cout<<"Brawo,odpowiedziales za "<<il<<" razem!"<<endl;
else if (odp>los) cout<<"za duzo"<<endl;
else cout<<"za malo"<<endl;
}while(odp!=los);
szlaczek();
{
int liczba,suma;
cout<<"Podaj liczbe trzycyfrowa: ";
cin>>liczba;
if(liczba>99)
}
{
suma = (liczba%10)+(liczba/10)%10+(liczba/100)%10;
cout<<"Suma cyfr tej liczby wynosi: "<<suma<<endl;
}
else
{
cout<<"Podana liczba nie jest trzycyfrowa,podaj jeszcze raz: ";
cin>>liczba;
suma = (liczba%10)+(liczba/10)%10+(liczba/100)%10;
cout<<"Suma cyfr tej liczby wynosi: "<<suma<<endl;
{
szlaczek();
return 0;
}
question from:
https://stackoverflow.com/questions/66047333/functions-with-parameters 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…