ich brauch mal wieder einen kleinen Denkanstoß zum Thema Call by Reference.
Ich habe folgendes Programm in c++
Code: Alles auswählen
//call by calue mit Rückgabewert
#include <string>
#include <iostream>
using namespace std;
string zahlen(short z);
int main(void)
{
	short zahl;
	while(1)
	{
		cout << "Zahl = ? ";
		cin >> zahl;
		zahlen(zahl);
		cout << zahl << " = " << zahlen (zahl) << endl;
	}
	return 0;
}
string zahlen(short z)
{
	string zt;
	string einer[9] = {"ein", "zwei", "drei", "vier", "fuenf", "sechs", "sieben", "acht", "neun"};
	string zehner [2] = {"zwanzig", "dreissig"};
	short i = z%10-1;	
	short j = z/10-2;	
	if(z == 20)
		zt = zehner[0];
	else if(z == 30)
		zt = zehner[1];
	else if(z >= 21 && z <= 39)
		zt = einer[i] + "und" + zehner[j];
	else //if(z<20 && z>39)
		zt = "unbekannt";
//	cout << z << " = " << zt << endl;
	return zt;
}

