im learnigand i would really apreciate some help


this is the error that is marking: Cpp\include\c++\mingw32" -I"C:\Dev-Cpp\include\c++\backward" -I"C:\Dev-Cpp\include" -L"C:\Dev-Cpp\lib"
C:/Dev-Cpp/marco antonio di pentima.cpp: In function `int main()':
C:/Dev-Cpp/marco antonio di pentima.cpp:78: parse error at end of input

EjecuciĆ³n Terminada




#include<stdlib.h>
#include<stdio.h>

char id, rsp, idmax, idmin;
float conta=0, contb=0, acuma=0, acumb=0, notamax=0, notamin=20;
float nota;
int nota1, nota2;
main()
{
do
{
printf("/ningrese el numero de carnet del estudiante");
scanf(" %c", id);
do
{
printf("/ningrese la nota del primer curso, solo se aceptan notas validas");
scanf(" %d", nota1);
while ((nota1<1 || nota1>20))


//---validacion 2//
do
{
printf("/ningrese la nota del segundo curso, solo se aceptan notas validas");
scanf(" %d", nota2);
while ((nota1<1 || nota1>20))


// datos//

nota=(nota1+nota2)/2;

printf("/nel numero de carnet del estudiante es %c", id);
printf("/nla nota del primer curso fue %f", nota1);
printf("/nlla nota del segundo curso fue %f", nota2);
printf("la media del alumno en los dos curso es de %f", nota);
// determinacion del curso//
if (nota<15)
{
printf("/n el estudiante sera ubicado en el curso B");
contb=contb+1;
acumb=acumb+nota;
}
else
{
printf("/n el estudiante sera ubicado en el curso A");
conta=conta+1;
acuma=acuma+nota;
}
//--------pregunta si desea repetir el proceso//


if (notamax>nota)
{
notamax=nota;
id=idmax;
}
if (nota<notamin);
{
notamin=nota;
id=idmin;
}
printf("/ndesea ingresar el dato de otro estudiante? si=s no=n");
scanf(" %c", rsp);
while (rsp=='n')

//parte b//
printf("/n la cantidad de alumnos en el curso A es de %f:", conta);
printf("/n la cantidad de alumnos en el curso B es de %f:", contb);
printf("/n la media en el curso A es de %f:", acuma/conta);
printf("/n la media en el curso B es de %f:", acumb/contb);
printf("/n la mayor media es el alumno %c", idmax, "con media de %f:", notamax);
printf("/n la menor media es el alumno %c", idmin, "con media de %f:", notamin);

system("pause");
return main();
}
Last edited on
This is your code with sane automatic indentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <stdlib.h>
#include <stdio.h>

char id, rsp, idmax, idmin;
float conta = 0, contb = 0, acuma = 0, acumb = 0, notamax = 0, notamin = 20;
float nota;
int nota1, nota2;
main() {
   do {
      printf("/ningrese el numero de carnet del estudiante");
      scanf(" %c", id);
      do {
         printf("/ningrese la nota del primer curso, solo se aceptan notas validas");
         scanf(" %d", nota1);
         while ((nota1 < 1 || nota1 > 20))

            //---validacion 2//
            do {
               printf("/ningrese la nota del segundo curso, solo se aceptan notas "
                         "validas");
               scanf(" %d", nota2);
               while ((nota1 < 1 || nota1 > 20))

                  // datos//

                  nota = (nota1 + nota2) / 2;

               printf("/nel numero de carnet del estudiante es %c", id);
               printf("/nla nota del primer curso fue %f", nota1);
               printf("/nlla nota del segundo curso fue %f", nota2);
               printf("la media del alumno en los dos curso es de %f", nota);
               // determinacion del curso//
               if (nota < 15) {
                  printf("/n el estudiante sera ubicado en el curso B");
                  contb = contb + 1;
                  acumb = acumb + nota;
               } else {
                  printf("/n el estudiante sera ubicado en el curso A");
                  conta = conta + 1;
                  acuma = acuma + nota;
               }
               //--------pregunta si desea repetir el proceso//

               if (notamax > nota) {
                  notamax = nota;
                  id = idmax;
               }
               if (nota < notamin)
                  ;
               {
                  notamin = nota;
                  id = idmin;
               }
               printf("/ndesea ingresar el dato de otro estudiante? si=s no=n");
               scanf(" %c", rsp);
               while (rsp == 'n')

                  // parte b//
                  printf("/n la cantidad de alumnos en el curso A es de %f:", conta);
               printf("/n la cantidad de alumnos en el curso B es de %f:", contb);
               printf("/n la media en el curso A es de %f:", acuma / conta);
               printf("/n la media en el curso B es de %f:", acumb / contb);
               printf("/n la mayor media es el alumno %c", idmax, "con media de %f:",
                         notamax);
               printf("/n la menor media es el alumno %c", idmin, "con media de %f:",
                         notamin);

               system("pause");
               return main();
            }
note how there are missing closing braces `}'

It seems that you are confused by the do-while syntax, it is like
1
2
3
do{
   //statements
} while( condition ) ; //note the semicolon here 




by the way, as you are programming in C++
- main must return int
- you can't call main
- your flags in printf and scanf are wrong, enable warnings when compiling. You may use cin and cout instead.
- "/n" is exactly that, an slash and a n. A newline is "\n"
Last edited on
Edit your post to include code tags. See http://www.cplusplus.com/articles/jEywvCM9/
Not just tags, but indent the code as intuitively as possible. Then you should see that the '{' and '}' do not add up.


Note: Do not call main() in the code.
> indent the code as intuitively as possible.
I think that you should not indent manually, handle it to the IDE instead.
that way you would not mask mistakes like forgetting to enclose a block with braces or having empty bodies.
Topic archived. No new replies allowed.