Brauche dringend hilfe beim c++ programm!

hi,

ich soll ein programm schreiben, dass wie folgt aussieht:


Welche Brifmarke wollen sie:

1 = 45 ct (postkarte)
2 = 55 ct (standardbrief)
3 = 90 ct (kompaktbrief)
4 = 145 ct (großbrief)
5 = 220 ct (maxibrief)

ihre Wahl bitte: … (bspw. 3) //wahl zwischen 1 bis 5

Der Automat nimmt heute leider nur 2 euro stucke entgegen.

Bitte die Anzahl ihrer verfuegbaren 2 euro stuecke eingeben: (bspw. 4)

Sie erhalten (bspw. 8) Marken zu (bwsp. 0.9 ct)

Ihr Rückgeld beträgt (bspw. 0.8 ct)


Ich hab das mit der if else bedingung gemacht und wollte fragen, wie man das mit array machen kann. Ich weiß nicht wie ich der Auswahl einen Wert zuweisen kann(z.B. zu der Auswahl 3 soll der preis o.9 ct zugewiesen werden)

Programm sieht wie folgt aus:

#include
#include
#include
#include

class automat
{ public:

float euro;
int z;
float h;
char auswahl;
float p[];
char v1, v2, v3, v4, v5;

void markentyp_auswaehlen();
void anzahl_der_verfuegbaren_2_eu_stuecke_eingeben();
void anzahl_der_marken_berechnen_und_ausgeben();
void rueckgeld_auszahlen();
};

void automat::markentyp_auswaehlen()
{
cout> auswahl;
cout > euro;

}

void automat::anzahl_der_marken_berechnen_und_ausgeben()
{
float p[5]={0.45, 0.55, 0.90, 1.45, 2.20};
char v1=‚1‘, v2=‚2‘, v3=‚3‘, v4=‚4‘, v5=‚5‘;

if(auswahl==v1) {h=euro*2/p[0]; cout

Hallo,

so spät noch am programmieren^^.

Speichere doch deine Auswahl nicht in einem char, sondern in einem int. Dann kannst du direkt auf dein Array zugreifen und musst nicht mit den abfragen arbeiten.

Ach, du solltest deine Eingabe aber auf jeden Fall überprüfen (ob sie auch wirklich zwischen 1 und 5 liegt). Grund? Eingaben müssen immer überprüft werden, da der geneigte Nutzer gerne mal Mist eingibt.

Grüße

PS: Rechtschreibfehler sind ein Ausdruck meiner Kunstform

hi,

ich soll ein programm schreiben, dass wie folgt aussieht:

probiers doch mal mit

switch (v)
{
case 1:

h=euro*2/p[0];
cout

So isses kürzer und mit Array…

void automat::anzahl\_der\_marken\_berechnen\_und\_ausgeben()
{
 float p[5]={0.45, 0.55, 0.90, 1.45, 2.20};
 char v1='1', v2='2', v3='3', v4='4', v5='5';
 int i = auswahl-'1'; // geht da 1,2,3,4,5 alle aufsteigende ASCII Codes haben
 h=euro\*2/p[i]; 
 cout