15.03.2015, 16:20
Witam, bardzo proszę o pomoc, a mianowicie muszę napisać program w języku C++ który będzie miał trzy funkcje. Wszystko jest w porządku, wszystko działa itd tylko dodatkowo muszę dopisać owe komentarze przy każdej pętli i tutaj tkwi problem, że kompletnie nie wiem o co z nimi chodzi, jeśli byłby ktoś taki miły i pomógł mi je napisać byłabym bardzo wdzięczna.
Z góry dziękuje
Program:
#include <iostream> // dołączam biblioteki
#include <cstdio>
#include <math.h>
using namespace std; // używana jest przestrzeń nazw std
long NWD(unsigned long a, unsigned long b)
{
while(a != b) if(a > b) a -= b; else b -= a;
return(a);
}
void pierwszy() {
unsigned long a,b;
cout <<"Podaj a = ";
cin >> a;
cout <<"Podaj b = ";
cin >> b;
cout << endl;
if((a == 0) || (b == 0))
cout << "Zle dane!\n";
else
{
cout << "NWD (" << a << "," << b << ") = "<<NWD(a,b);
}
}
void drugi() {
int arab[13]={1000, 900 , 500 , 400 , 100 , 90 ,50 ,40 , 10 ,9 ,5,4,1};
int liczba,ilosc;
do { cout<<"Podaj liczbe [1..3999] : "; cin>>liczba;
}while ((liczba<1)||(liczba>3999));
cout<<"Liczba w Postaci Rzymskiej wynosi : ";
for (int i=0;i<=12;i++) // zwiększ wartość zmiennej i
{
ilosc=liczba/arab[i];
liczba%=arab[i];
for (int j=1;j<=ilosc;j++)
{
switch (i){
case 0: {cout<<"M" ;break;}//1000
case 1: {cout<<"CM";break;}//900
case 2: {cout<<"D" ;break;}//500
case 3: {cout<<"CD";break;}//400
case 4: {cout<<"C" ;break;}//100
case 5: {cout<<"XC";break;}//90
case 6: {cout<<"L" ;break;}//50
case 7: {cout<<"XL";break;}//40
case 8: {cout<<"X" ;break;}//10
case 9: {cout<<"IX";break;}//9
case 10: {cout<<"V" ;break;}//5
case 11: {cout<<"IV";break;}//4
case 12: {cout<<"I" ;break;}//1
}
}
}
getchar();
}
void trzeci() {
int n,robn,ile,nieparzysta;
cout << "Program oblicza pierwiastek calkowity z zadanej liczby.\n";
cout << "©2003 student\n\n\n";
cout << "n=";
cin >> n;
robn=n;
nieparzysta=1;
ile=0;
while (robn>=0)
{
robn-=nieparzysta;
ile++;
nieparzysta+=2;
}
ile--;
cout << "\n\nPierwiastek calkowity z liczby n = "
<< ile << ".\n\n";
}
void menu() {
cout << "\n\nMenu:" << endl;
cout << "Oblicz NWD najwiekszy wspolny dzielnik dwoch liczb - nacisnij 1 oraz ENTER." << endl;
cout << "Zmien liczbe w postaci dziesietnej na liczbe w postaci rzymskiej - nacisnij 2 oraz ENTER." << endl;
cout << "Wyznacz pierwiastek calkowity zadanej liczby - nacisnij 3 oraz ENTER." << endl;
cout << "Zakoncz program - nacisnij 4." << endl;
}
int main ()
{
cout <<"Witam, jestem programem LICZEBOSC, ktory pomoze Ci i ulatwi Twoja prace. Przejdz do Menu i zobacz mozliwosci klikajac ENTER. Nastepnie wybierz cyfre od 1 do 4." << endl;
int polecenie;
int a;
getchar();
menu();
cin >> a;
while(a!=4) {
switch (a) {
case 1: pierwszy(); break;
case 2: drugi(); break;
case 3: trzeci(); break;
case 4: cout<<"Dziekuje za uwage, milego dnia."; break;
}
menu();
cin >> a;
}
getchar();
return 0;
}
Z góry dziękuje
Program:
#include <iostream> // dołączam biblioteki
#include <cstdio>
#include <math.h>
using namespace std; // używana jest przestrzeń nazw std
long NWD(unsigned long a, unsigned long b)
{
while(a != b) if(a > b) a -= b; else b -= a;
return(a);
}
void pierwszy() {
unsigned long a,b;
cout <<"Podaj a = ";
cin >> a;
cout <<"Podaj b = ";
cin >> b;
cout << endl;
if((a == 0) || (b == 0))
cout << "Zle dane!\n";
else
{
cout << "NWD (" << a << "," << b << ") = "<<NWD(a,b);
}
}
void drugi() {
int arab[13]={1000, 900 , 500 , 400 , 100 , 90 ,50 ,40 , 10 ,9 ,5,4,1};
int liczba,ilosc;
do { cout<<"Podaj liczbe [1..3999] : "; cin>>liczba;
}while ((liczba<1)||(liczba>3999));
cout<<"Liczba w Postaci Rzymskiej wynosi : ";
for (int i=0;i<=12;i++) // zwiększ wartość zmiennej i
{
ilosc=liczba/arab[i];
liczba%=arab[i];
for (int j=1;j<=ilosc;j++)
{
switch (i){
case 0: {cout<<"M" ;break;}//1000
case 1: {cout<<"CM";break;}//900
case 2: {cout<<"D" ;break;}//500
case 3: {cout<<"CD";break;}//400
case 4: {cout<<"C" ;break;}//100
case 5: {cout<<"XC";break;}//90
case 6: {cout<<"L" ;break;}//50
case 7: {cout<<"XL";break;}//40
case 8: {cout<<"X" ;break;}//10
case 9: {cout<<"IX";break;}//9
case 10: {cout<<"V" ;break;}//5
case 11: {cout<<"IV";break;}//4
case 12: {cout<<"I" ;break;}//1
}
}
}
getchar();
}
void trzeci() {
int n,robn,ile,nieparzysta;
cout << "Program oblicza pierwiastek calkowity z zadanej liczby.\n";
cout << "©2003 student\n\n\n";
cout << "n=";
cin >> n;
robn=n;
nieparzysta=1;
ile=0;
while (robn>=0)
{
robn-=nieparzysta;
ile++;
nieparzysta+=2;
}
ile--;
cout << "\n\nPierwiastek calkowity z liczby n = "
<< ile << ".\n\n";
}
void menu() {
cout << "\n\nMenu:" << endl;
cout << "Oblicz NWD najwiekszy wspolny dzielnik dwoch liczb - nacisnij 1 oraz ENTER." << endl;
cout << "Zmien liczbe w postaci dziesietnej na liczbe w postaci rzymskiej - nacisnij 2 oraz ENTER." << endl;
cout << "Wyznacz pierwiastek calkowity zadanej liczby - nacisnij 3 oraz ENTER." << endl;
cout << "Zakoncz program - nacisnij 4." << endl;
}
int main ()
{
cout <<"Witam, jestem programem LICZEBOSC, ktory pomoze Ci i ulatwi Twoja prace. Przejdz do Menu i zobacz mozliwosci klikajac ENTER. Nastepnie wybierz cyfre od 1 do 4." << endl;
int polecenie;
int a;
getchar();
menu();
cin >> a;
while(a!=4) {
switch (a) {
case 1: pierwszy(); break;
case 2: drugi(); break;
case 3: trzeci(); break;
case 4: cout<<"Dziekuje za uwage, milego dnia."; break;
}
menu();
cin >> a;
}
getchar();
return 0;
}