Funktionskopf fehlt - Parameterliste im alten Stil?

blizZar

Mitglied
Hi,
Also wir sollen im DVT LK ein Rechenprogramm mit Funktionen schreiben... leider scheitere ich schon in den ersten Zeilen:


--------------------Konfiguration: re - Win32 Debug--------------------
Kompilierung läuft...
sss.cpp
D:\Dokumente und Einstellungen\hu8i\Eigene Dateien\re\sss.cpp(17) : error C2447: Funktionskopf fehlt - Parameterliste im alten Stil?
D:\Dokumente und Einstellungen\hu8i\Eigene Dateien\re\sss.cpp(24) : fatal error C1004: Unerwartetes Dateiende gefunden
Fehler beim Ausführen von cl.exe.

re.exe - 2 Fehler, 0 Warnung(en)

--------------------------------------------------------------------------------------------------------------------------

Dies ist mein Code den ich bissher nur schreiben konnte da ich vorallem an dem "Funktionskopf fehlt - Parameterliste im alten Stil?" nicht vorbei komme!

#include <stdio.h>

int rechenzeichen();

int rechenz;

int main()

{
printf("Dies ist ein Rechenprogramm");
printf("\nBitte geben Sie ein Rechenzeichen ein (+,-,*,/): ");
scanf("%i",&rechenz);

return 0;
}

{ <---- Hier tritt der Fehler "Funktionskopf fehlt - Parameterliste im alten Stil?" auf!
int rechenzeichen()
if(&rechenz !='+' || !='-' || !='*' || !='/') {
printf("Geben Sie ein gültiges Rechenzeichen ein!");
else
return 0;
}



bitte helfen... so schnell wie möglich da ich das morgen schon abgeben muss ^^
Ich arbeite mit Visual C++...
bye
 
Zuletzt bearbeitet:
uha, das war ja ganz schön verfrimelt.
Ein bisschen besser aufpassen und lernen das nächste Mal!

Da ich heute meinen guten Tag hab hier. Hab flink alle möglichen Spielereien eingebaut.
Allerdings fehlt da noch so einiges :)


PHP:
   #include <stdio.h>
   #include <stdlib.h>
   
   double berechnen(char _zeichen, int _zahl1, int _zahl2){ 
   
   	if(_zeichen=='+')
   			return (double)_zahl1 + (double)_zahl2;
   
   	if(_zeichen=='-')
   			return (double)_zahl1 - (double)_zahl2;
   
   	if(_zeichen=='*')
   			return (double)_zahl1 * (double)_zahl2;
   
   	if(_zeichen=='/')
   			return (double)_zahl1 / (double)_zahl2;
   
   	printf("Fehler: Geben Sie ein gültiges Rechenzeichen ein!");
   	exit(0);
   }
   
   int main(int argc, char** argv)
   {
   	char c_zeichen;
   	int  i_zahl1,i_zahl2;
   	double d_ergebnis;
   	
   	printf("Dies ist ein Rechenprogramm");
   	printf("\nBitte geben Sie ein Rechenzeichen ein (+,-,*,/): ");
   	scanf("%c",&c_zeichen);
   
   	printf("\nBitte geben Sie Zahl 1 ein: ");
   	scanf("%i",&i_zahl1);
   
   	printf("\nBitte geben Sie Zahl 2 ein: ");
   	scanf("%i",&i_zahl2);
   
   	d_ergebnis = berechnen(c_zeichen,i_zahl1,i_zahl2);
   
   	printf("Gleichung %d %c %d = %g", i_zahl1, i_zahl2, c_zeichen, d_ergebnis);
   
   	return 0;
   }
 
Hab noch ma ne simple frage

Code:
  #include <stdio.h>
   
   int main(void)
   {
       int rechenz;
       printf("\tR e c h e n p r o g r a m m");
       printf("\n<<+>> 1");
       printf("\n<<->> 2");
       printf("\n<<*>> 3");
       printf("\n<</>> 4");
       printf("\nModus: ");
       scanf("%i",&rechenz);
       
       
       while(rechenz>4) {                     //Scheife aber da gibbet ein CHAOS
       if(rechenz==1) {
           printf("Plus");
       }
       if(rechenz==2) {
           printf("Minus");
       }
       if(rechenz==3) {
           printf("Mal");
       }
       if(rechenz==4) {
           printf("Geteilt");
       }
       if(rechenz>4) {
           printf("Falsche Eingabe");
       }
                       }
       
   }
------------------------

Ich will einfach eine wiederholschleife wenn die eingabe >4 ist. Wenn die zahl >4 ist, soll da stehen dass er eine gültoge Zahl eingeben hat und neu eingeben soll und das sollange bis eingabe <=4.
 
Hab nun aber ein anderes Problem. Wie sollen das prog mit Funktionen machen. Nun hab ich hier die funktion "void eingabe(int zahl1,zahl2)".
Aber irgendwie schein ich die funktion falsch ins programm einzubringen.

Code:
#include <stdio.h>
 
 
 void eingabe(int zahl1, zahl2);
 int main(void)
 
 {
 	printf("\tR e c h e n p r o g r a m m\n\n");
 	int rechenz;
 	do
 	{
 	printf("\n<<+>> 1");
 	printf("\n<<->> 2");
 	printf("\n<<*>> 3");
 	printf("\n<</>> 4");
 	printf("\nModus: ");
 
 
 	scanf("%i",&rechenz);
 	
 	
 	
 	if(rechenz==1) {
 		printf("Plus");
 	}
 	if(rechenz==2) {
 		printf("Minus");
 	}
 	if(rechenz==3) {
 		printf("Mal");
 	}
 	if(rechenz==4) {
 		printf("Geteilt");
 	}
 	if(rechenz>4) {
 	    printf("\n\n<>!<>!<>!<>Falsche Eingabe<>!<>!<>!<>\n\n");
 	}
 	}
 	while(rechenz>4);
 
 		
 	void eingabe(int zahl1, zahl2)	// Hier ist der Fehler
 	{
 
 	
 
 
 	printf("Geben Sie nun die 1. Zahl ein: ");
 	scanf("%lf",&zahl1);
 	printf("\n%lf",&zahl1);
 
 			do
 			{
 				printf("Geben Sie nun die 2. Zahl ein: ");
 				scanf("\n%lf",&zahl2);
 
 				if(zahl2 ==0) {
 		    	printf("Die 0 ist ungültig!\nGeben Sie eine andere Zahl ein!");
 				}
 				while(zahl2==0)
 
 	
 			}
 
 	
 	}
 	return 0;
 }
 
error C2062: 'int'-Typ unerwartet

Code:
#include <stdio.h>
   
  int funktion(int zahl1, int zahl2);
  
  int main()
  {
  	 printf("\tR e c h e n p r o g r a m m\n\n");
  	 int rechenz;
  
  	 printf("\n<<+>> 1");
  	 printf("\n<<->> 2");
  	 printf("\n<<*>> 3");
  	 printf("\n<</>> 4");
  	 printf("\nModus: ");
  	
  	do
  	{
  		scanf("%i",&rechenz);
  		if(rechenz==1) {
  			printf("Plus");
  		}
  		if(rechenz==2) {
  			printf("Minus");
  		}
  		if(rechenz==3) {
  			printf("Mal");
  		}
  		if(rechenz==4) {
  			printf("Geteilt");
  		}
  		if(rechenz>4) {
  			printf("Ungültige Eingabe");
  			printf("\nModus: ");
  		}
  	}while(rechenz>4);
  	return 0;
   
  }
  int funktion(int zahl1, int zahl2)
  
  {
  	
  
  	printf("Geben Sie nun die 1. Zahl ein: ");
  	 scanf("%lf",&zahl1);
  	 printf("\n%lf",&zahl1);
   
  			 do
  			 {
 				 printf("Geben Sie nun die 2. Zahl ein: ");
  				 scanf("\n%lf",&zahl2);
   
  				 if(zahl2 ==0) {
 			 	printf("Die 0 ist ungültig!\nGeben Sie eine andere Zahl ein!");
  				 }
  				 while(zahl2==0);
  			}
  				return 0;
  }

dann kommt der fehler ^^
 
Zuletzt bearbeitet:
Zurück