Main link : Go to URI Web to solve this problem
URI Online Judge | 1040
Average 3
Adapted by Neilor Tonin, URI Brazil
Timelimit: 1
Read four numbers (N1, N2, N3, N4), which one with 1 digit after the decimal point, corresponding to 4 scores obtained by a student. Calculate the average with weights 2, 3, 4 e 1 respectively, for these 4 scores and print the message "Media: " (Average), followed by the calculated result. If the average was 7.0 or more, print the message "Aluno aprovado." (Approved Student). If the average was less than 5.0, print the message: "Aluno reprovado." (Reproved Student). If the average was between 5.0 and 6.9, including these, the program must print the message "Aluno em exame." (In exam student).
In case of exam, read one more score. Print the message "Nota do exame: " (Exam score) followed by the typed score. Recalculate the average (sum the exam score with the previous calculated average and divide by 2) and print the message “Aluno aprovado.” (Approved student) in case of average 5.0 or more) or "Aluno reprovado." (Reproved student) in case of average 4.9 or less. For these 2 cases (approved or reproved after the exam) print the message "Media final: " (Final average) followed by the final average for this student in the last line.
Input
The input contains four floating point numbers that represent the students' grades.
Output
Print all the answers with one digit after the decimal point.
Input Sample | Output Sample |
2.0 4.0 7.5 8.0 6.4 | Media: 5.4 Aluno em exame. Nota do exame: 6.4 Aluno aprovado. Media final: 5.9 |
2.0 6.5 4.0 9.0 | Media: 4.8 Aluno reprovado. |
9.0 4.0 8.5 9.0 | Media: 7.3 Aluno aprovado. |
Solution in Java language :
import java.util.Scanner; public class URI_1040 { public static void main(String[] args) { float N1, N2, N3, N4,average,N5,recalaverage; Scanner input =new Scanner(System.in); N1 =input.nextFloat(); N2 =input.nextFloat(); N3 =input.nextFloat(); N4 =input.nextFloat(); average =((N1 * 2)+(N2 * 3)+( N3 * 4)+(N4 * 1))/10; if (average >= 7.0) { System.out.printf("Media: %.1f\n",average); System.out.print("Aluno aprovado.\n"); } else if (average >= 5.0 && average <= 6.9) { System.out.printf("Media: %.1f\n",average); System.out.print("Aluno em exame.\n"); N5 =input.nextFloat(); System.out.printf("Nota do exame: %.1f\n",N5); recalaverage =(average + N5) / 2; if (recalaverage >= 5.0) { System.out.print("Aluno aprovado.\n"); }else { System.out.print("Aluno reprovado.\n"); } System.out.printf("Media final: %.1f\n",recalaverage); } else if (average < 5.0) { System.out.printf("Media: %.1f\n",average); System.out.print("Aluno reprovado.\n"); } } }URI 1040 Solution in C language
#include <stdio.h>
int main()
{
double a, b, c, d, last, m;
scanf("%lf %lf %lf %lf", &a, &b, &c, &d);
m = (a * 2 + b * 3 + c * 4 + d) / 10;
printf("Media: %.1f\n", m);
if (m >= 7.0){
printf("Aluno aprovado.\n");
}
else if (m >= 5.0)
{
printf("Aluno em exame.\n");
scanf("%lf", &last);
printf("Nota do exame: %.1f\n", last);
if (last + m / 2.0 > 5.0){
printf("Aluno aprovado.\n");
}
else{
printf("Aluno reprovado.\n");
}
printf("Media final: %.1f\n", (last + m ) / 2.0);
}
else{
printf("Aluno reprovado.\n");
}
return 0;
}
No comments:
Write commentsTo know more about the problem, give us your valuable commment. We'll try to help you. Thanks