Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

H συνθήκη while θέλει όλη σε μια εξωτερική παρένθεση. Βέβαια και να το κάνεις αυτό, πάλι η λογική σου είναι λάθος στο while loop, αφού δεν ξαναζητάς πουθενά input για το code και τους αριθμούς σου μέσα στο loop. Οπότε πατώντας 1 ή 2 μετά θα έχεις ένα infinite loop που θα εκτυπώνει τα ίδια.

Δημοσ.
Εκφωνηση Να γίνει ανάπτυξη προγράμματος σε γλώσσα C++ με το οποίο θα γίνεται εισαγωγή δύο πραγματικών αριθμών και

ενός ακέραιου κωδικού. Ο κωδικός θα εισάγεται με επαναληπτική διαδικασία και να είναι το 1 ή το 2. Αν ο χρήστης

δώσει αριθμό που δεν είναι 1 ή 2 να γίνεται εμφάνιση μηνύματος που να προειδοποιεί τον χρήστη ότι επιτρέπεται

είσοδος μόνο των κωδικών 1 ή 2 και μετά επανάληψη της διαδικασίας εισόδου του κωδικού.

Το πρόγραμμα θα περιλαμβάνει τις συναρτήσεις:

1) sinartisi1 Βρίσκει και επιστρέφει το άθροισμα και την διαφορά των δύο αριθμών. Οι αριθμοί θα

2) sinartisi2 Βρίσκει και επιστρέφει το γινόμενο και το πηλίκο των δύο αριθμών Οι αριθμοί θα εμφανίζονται

Στο main:

• Θα γίνεται είσοδος των αριθμών και του κωδικού

• Θα γίνεται κλήση της συνάρτησης sinartisi1 ή sinartisi2 ανάλογα με τον κωδικό που εισάγει ο χρήστης.

• Θα γίνεται εμφάνιση των αποτελεσμάτων της συνάρτησης με τα κατάλληλα μηνύματα.

εμφανίζονται μέσα από το main.

μέσα από το main.

 

 
#include 
#include 
 
using namespace std;
 
void sinartisi1 (float & , float &, float &,float &);
void sinartisi2 (float & , float &, float &,float &);
 
 
int main(int argc, char *argv[])
{
float m2,m1,code, num1, num2 ;
 
cout <<"dose tous dio protous pragmatikous arithmous"<<"\n";
cin >> num1;
cin >> num2;
cin >> code;
 
while (code==1) || (code==2) 
{
if (code==1) 
{
sinartisi1(m1, m2);
cout << "to athrisma einai:" << num1 <<" "<<"kai i diafora einai" << num2 << "\n";
}
if (code==2)
{
sinartisi2(m1, m2);
cout << "to ginomeno einai:" << num1 <<" "<<" kai to piliko einai" << num2 << "\n";
}
 
}
 
system("PAUSE");
return EXIT_SUCCESS;
}
 
void sinartisi1(float & sum, float & dia, float & ar1, float & ar2)
 
{
sum=ar1+ar2;
dia=ar1-ar2;
cout<<"too athroisam kai i diafora einai" << sum <<" "<< dia <<"\n";
 
}
 
void sinartisi2(float & gin, float & pil, float & ar1, float ar2)
 
{
gin=ar1*ar2;
pil=ar1/ar2;
cout<<"to ginomeno kai to piliko einai" << gin <<" "<< pil <<"\n";
 
}
 
Ευχαριστω 

ενω το κανω σωστο μου βγαζει κατι λαθος στις συναρτησεις δε ξερω γιατι αλλα....

 

θελω να μου εμφανιζει οπως λεει στην εκφωνηση δυο αποτελεσματα σε περιπτωση που καποιος βαλει code 1 και δυο αποτελεσματα σε περιπτωση που καποιος βαλει code 2 

 

αλλα κατι δεν παει καλα με την δομη της συναρτησης που εκανα .

 

ευχαριστω για οποια βοηθεια που θα μπορουσε επιτελους να λυση αυτο μυστηριο λολ :)

  • Moderators
Δημοσ.

ενω το κανω σωστο μου βγαζει κατι λαθος στις συναρτησεις δε ξερω γιατι αλλα....

 

Θα έχει κάνα bug ο compiler και δε θα το βγάζει σωστά...

 

H συνθήκη while θέλει όλη σε μια εξωτερική παρένθεση. Βέβαια και να το κάνεις αυτό, πάλι η λογική σου είναι λάθος στο while loop, αφού δεν ξαναζητάς πουθενά input για το code και τους αριθμούς σου μέσα στο loop. Οπότε πατώντας 1 ή 2 μετά θα έχεις ένα infinite loop που θα εκτυπώνει τα ίδια.

 

Αυτό που λέει ο ZAKKWYLDE είναι άνευ σημασίας, γιατί όπως είπαμε έχει bug o compiler και δεν αξίζει να δοκιμάσεις αυτά που λέει μέχρι να διορθώσουν τον compiler...

  • Like 1
Δημοσ.

δεν εχει προβλημα ο compiler μου απλα δεν κανω κατι καλα στην συναρτηση void θελω να μου επιστρεφει δυο αποτελεσματα αλλα πως θα το κανω σωστα εκει κολαω...............

Δημοσ.

Μια ερώτηση φίλε μου, από περιέργεια δηλαδή... τι έτος είσαι?

 

 

 

#include <iostream>

using namespace std;

void sinartisi1(float, float, float *, float *);		// Athroisma & Diafora
void sinartisi2(float, float, float *, float *);		// Ginomeno & Piliko

int main(int argc, char *argv[])
{
	float athroisma, diafora, ginomeno, piliko;
	float num1, num2;
	int code = 0;

	cout << "Dwse 2 pragmatikous arithmous : ";
	cin >> num1 >> num2;


	do
	{
		cout << "Dwse ton kwdiko tou paypal sou: ";
		cin >> code;

		if (code == 1)
		{
			sinartisi1(num1, num2, &athroisma, &diafora);
			cout << "To Athroisma einai \t: " << athroisma << endl;
			cout << "H Diafora einai \t: " << diafora << endl;
		}
		else if (code == 2)
		{
			sinartisi2(num1, num2, &ginomeno, &piliko);
			cout << "To Ginomeno einai \t: " << ginomeno << endl;
			cout << "To Piliko einai \t: " << piliko << endl;
		}
	} while(code != 1 && code != 2);

	system("pause");
	return 0;
}

void sinartisi1(float x, float y, float *athroisma, float *diafora)
{
	*athroisma = x + y;
	*diafora = x - y;
}

void sinartisi2(float x, float y, float *ginomeno, float *piliko)
{
	*ginomeno = x * y;
	*piliko = x / y;
}

 

 

Δημοσ.

 

ενω το κανω σωστο μου βγαζει κατι λαθος στις συναρτησεις δε ξερω γιατι αλλα....

 

θελω να μου εμφανιζει οπως λεει στην εκφωνηση δυο αποτελεσματα σε περιπτωση που καποιος βαλει code 1 και δυο αποτελεσματα σε περιπτωση που καποιος βαλει code 2 

 

αλλα κατι δεν παει καλα με την δομη της συναρτησης που εκανα .

 

ευχαριστω για οποια βοηθεια που θα μπορουσε επιτελους να λυση αυτο μυστηριο λολ :)

 

 

Μήπως να δεις λίγο πως καλείς τις δύο συναρτήσεις και πως τις ορίζεις;;; (πόσα ορίσματα έχει στη μία περίπτωση και πόσα στην άλλη)

Παρεμπιπτόντως κοίταξε και τι σου έγραψαν τα άλλα παιδιά εδώ μέσα... Κάτι ξέρουν...

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...