Написать программу которая обрабатывает результаты экзамена

Написать программу, которая обрабатывает результаты экзамена. Для каждой оценки программа должна вычислить процент от общего количества оценок. Рекомендуемый вид экрана во время работы программы приведен ниже. Данные, введенные пользователем, выделены полужирным шрифтом.

Обработка результатов экзамена. Введите исходные данные: Пятерок -> 12

Четверок -> 10 Троек -> 7 Двоек -> 1 Результаты экзамена

C++
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
#include <iostream>
#include <math.h>
#include <conio.h> 
using namespace std;
int main()
{
    int *o, i, m, j;
    int arr[5];
    int b, c, d, e;
    cout << "Vvedite kolichestvo uchenikov: ";
    cin >> m;
    o = new int[m];
    cout << "Vvedite ocenki klassa: ";
    for (i = 0; i<m; i++)
    {
        cin >> o[i];
 
    };
    for (j = 1; j <= 5; j++) { arr[j] = 0; };
 
    for (i = 0; i<m; i++) { arr[o[i]] =arr[o[i]]+1; };
 
    cout << "Kolichestvo ocenok:" << endl
        << "Kolichestvo '2' " << arr[2] << endl
        << "Kolichestvo '3' " << arr[3] << endl
        << "Kolichestvo '4' " << arr[4] << endl
        << "Kolichestvo '5' " << arr[5] << endl;
 
 
    b = (arr[2] * 100) / m;
    c = (arr[3] * 100) / m;
    d = (arr[4] * 100) / m;
    e = (arr[5] * 100) / m;
 
    cout << "Procent ocenok:" << endl
        << "Procent '2' " << b << " %" << endl
        << "Procent '3' " << c << " %" << endl
        << "Procent '4' " << d << " %" << endl
        << "Procent '5' " << e << " %" << endl;
 
 
 
    _getch();
    return 0;
    system("pause");
}

почти все сделал,НО надо чтобы был массив:
2 1 25%
3 1 25%
4 1 25%
5 1 25%
(цифры подбирал рандомно,не нужен именно такой результат,нужна структура.)
ПЛЗ ХЕЛП ГАЙС

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

Ilya-93

0 / 0 / 0

Регистрация: 26.12.2015

Сообщений: 15

1

Написать программу, которая обрабатывает результаты экзамена

28.12.2015, 00:35. Показов 5114. Ответов 3

Метки нет (Все метки)


Написать программу, которая обрабатывает результаты экзамена. Для каждой оценки программа должна вычислить процент от общего количества оценок. Рекомендуемый вид экрана во время работы программы приведен ниже. Данные, введенные пользователем, выделены полужирным шрифтом.

Обработка результатов экзамена,
ведите исходные данные:
пятерок -> 12
четверок -> 10
троек -> 7
двоек -> 1
Результаты экзамена
——————————-
Пятерок 12%
четверок 10%
троек 7%
Двоек 1%

C++
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
#include <conio.h>
 
 
int _tmain(int argc, _TCHAR* argv[])
{
 
    setlocale(LC_ALL, "Russian");
    int n[6];
    int s = 0;
    float p[6];
    char *mes[6] = { "", "", "двоек", "троек", "четверок", "пятерок" };
    int i;
    cout << "Обработка результатов экзамена";
    cout << "Введите исходные данные";
    for (i = 5; i >= 2; i--)
    {
        cout << "%s->" << mes[i];
        cin >> n[i];
        s += n[i];
    }
    for (i = 2; i < 6; i++)
        p[i] = ((float)n[i]*100)/s;
    cout << "Результаты экзамена";
    cout << "-----------------------------";
    for (i = 5; i >= 2; i--)
        cout << "вывод n" << mes[i] << n[i] << p[i];
    cout << "-----------------------------";
    cout << "Закончить Жмите ENTER";
    getch();
 
 
    return 0;
}

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

28.12.2015, 00:35

3

0 / 0 / 0

Регистрация: 26.12.2015

Сообщений: 15

28.12.2015, 00:37

 [ТС]

2

Друзья помогите добить программу,не получается что-то

Написать программу, которая обрабатывает результаты экзамена



0



Den41LxD

18 / 18 / 27

Регистрация: 11.12.2014

Сообщений: 52

28.12.2015, 01:23

3

C++
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
#include <iostream>
using namespace std;
int main()
{
    setlocale(0,"Rus");
    int n[6];
    int s = 0;
    float p[6];
    char *mes[6] = { "", "", "двоек", "троек", "четверок", "пятерок" };
    int i;
    cout << "Обработка результатов экзаменаn";
    cout << "Введите исходные данные: n";
    for (i = 5; i >= 2; i--)
    {
        cout << mes[i] << "=> ";
        cin >> n[i];
        s += n[i];
    }
    for (i = 2; i < 6; i++)
        p[i] = ((float)n[i]*100)/s;
    cout << "Результаты экзаменаn";
    cout << "-----------------------------n";
    for (i = 5; i >= 2; i--)
        cout << mes[i] << " " << n[i] << " " << p[i] << "%n";
    cout << "-----------------------------n";
    cout << "Закончить Жмите ENTERn";
   system("pause");
}

надо было просто красиво отредактировать?



0



0 / 0 / 0

Регистрация: 26.12.2015

Сообщений: 15

28.12.2015, 01:37

 [ТС]

4

Den41LxD, от души!!!!



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

28.12.2015, 01:37

4

Формулировка задачи:

Написать программу, которая обрабатывает результаты экзамена. Для каждой оценки программа должны вычислитель процент от общего количества оценок, так же вывести количество оценок.

оценка -> кол- во-> процент
5-> 12->х%
4-> 10->х %
3-> 7->х %
2->1->х %
1->1->х %
0->1->х %

Код к задаче: «Написать программу, которая обрабатывает результаты экзамена»

textual

Листинг программы

using System;
class Program
{
    static void Main()
    {
        double sum = 0;
        int [] quan = new int[6];
        for (int i = 5; i >=0;i-- )
        {
            Console.Write("колво {0} : ",i);
            quan[i] = int.Parse(Console.ReadLine());
            sum += quan[i];
        }
        Console.WriteLine("всего оценок : "+sum);
        for (int i = 5; i >= 0; i--)
            Console.WriteLine("процент {0} : {1 : 0.##}%", i, (quan[i] / sum) * 100);
        Console.ReadKey(true);
    }
}

Лабораторная
работа №7

Задание 1.

Составить программу
на языке Pascal
для
вычисления значения функции y=f(x)
при
заданном значении x,которое
вводится с клавиатуры. Результат вывести
с тремя знаками после запятой. Варианты
заданий приведены в таблице 7.1.

program
primer1;

Const
a=2.71; b=1.63; c=0.81;

Var
x ,y :real;

Begin

Writeln(‘Введите
x=’);

Readln
(x);

y:=sqrt((a*exp(3*ln(x))+arctan(x))/(c*x+b*abs(ln(x))));

Writeln(‘Значение
y’,y:5:3);

End.

Задание 2.

Составить программу
на языке Pascal
в
соответствии с заданием варианта.
Рекомендуемый
вид экрана приведен в конце каждой
задачи.Значения,
вводимые с клавиатуры, выделены
полужирным шрифтом.

program
primer2;

Var
R1,R2,s1,s2,s3 :real;

Begin

Writeln(‘Введите
R1=,R2=’);

Readln(
R1, R2);

S1:=pi*r1*r1
;

S2:=pi*r2*r2;

S3:=
s2-s1;

Writeln(S1,S2,S3);

End.

Задание 3.

Составить программу
на языке Pascal
для
вычисления значения функции y=f(x)
при
заданном значении x,которое
вводится с клавиатуры.
Запустив программу дважды, получить
ответ для каждого из заданных значений
x.
Результат вывести с тремя знаками после
запятой. Варианты заданий приведены в
таблице 7.2.

program
primer3;

Const
a=9.5;b=3.8;

Var
x ,y :real;

Begin

Writeln
(‘Введите x=’ );

Readln
(x);

If
x<=-1 then y:=a*sin(x*x)/cos(x*x) else y:=b+sqr(x)/sqr(x)+a;

Writeln
(‘Значение y=’,y:5:3);

End.

Задание
4.

Составить программу
на языке Pascal
в
соответствии с заданием варианта.
Рекомендуемый вид экрана приведен в
конце каждой задачи. Значения, вводимые
с клавиатуры, выделены полужирным
шрифтом.

program
primer4;

Var
a,b,c :real;

Begin

Writeln
(‘Введите a=Введите b= Введите c=’);

Readln
(a,b,c);

if
(a>=1) and (a<=3) then writeln(‘a=’,a);

if
(b>=1) and (b<=3) then writeln(‘b=’,b);

if
(c>=1) and (c<=3) then writeln(‘c=’,c);

End.

Лабораторная
работа №8

Задание 1.

Составить программу,
которая выводит на экран счетчик, а
также вашу фамилию и имя 10 раз:

1.Иванов Иван

2.Иванов Иван

…..

10.Иванов Иван

program
primer1;

var
i:integer;

Begin

For
i:=1 to 10 do

writeln(‘
Слипченко Таня’);

end.

Задание 2.

Дано целое
положительное число N.
С использованием цикла FOR
составить
программу,
которая выводит на экран таблицу значений
функции y
при целых значениях аргумента x
от
1 до N.

program
primer2;

var x:integer;

y:real;

Begin

writeln (‘Введите x=’);

Readln(x);

For x:=1 to 10 do

Begin

y:=cos(x);

writeln(y);

end;

end.

Задание 3.

С использованием
цикла WHILE
составить
программу,
выполняющую табулирование функции
y=f(x)
на
отрезке [x1,
xn]
с шагом h.
Результат вывести с четырьмя знаками
после запятой. Варианты заданий приведены
в таблице 8.1.

program
primer3;

const
a=1.5; b=4.8;

var
x,y,x1,xn,h:real;

begin

writeln(‘Введите
x1,xn,h’);

read(x1,xn,h);

x:=x1;

writeln(‘
x’,’ ‘,’y’);

while
x<xn do

begin

if x<0
then writeln(‘корней нет’) else if
b*ln(a*sqr(x))+b*(ln(x)*ln(x))<0 then

writeln(‘корней
нет’)

else

begin

y:=a*(b/x-ln(a*x)/b*b);

x:=x+h;

end;

end;

end.

Задание 4.

С использованием
цикла REPEAT
составить
программу,
вычисляющую сумму введенных целых
положительных чисел. Числа вводятся
пользователем с клавиатуры до тех пор,
пока их сумма не превысит значение 100.
На каждом шаге цикла организовать вывод
промежуточного значения суммы.

program
primer4;

var
x,y,x1:real;

const
x2=100;

begin

x:=0;

repeat

writeln(‘Введите
x1’);

read(x1);

x:=x+x1;

writeln(‘Сумма
=’,x);

until
x>=x2;

writeln(‘Сумма
=100. Программа завершена’);

end.

Лабораторная
работа
№9

Задание 1.

Написать программу,
которая обрабатывает результаты
экзамена. Для каждой оценки программа
должна вычислить процент от общего
количества оценок.

program
primer1;

var
i,s:integer; x:real;

t:
array [1..5]of integer;

begin

writeln
(‘введите пятерок=’ );

readln
(T[1]);

writeln(‘введите
четверок=’);

readln
(T[2]);

writeln(‘введите
троек=’);

readln
(T[3]);

writeln(‘введите
двоек=’);

readln
(T[4]);

s:=s+T[1]+T[2]+T[3]+T[4];

for
i:=1 to 4 do

begin

x:=(t[i]/s)*100;

writeln
(x:3:3,’%’);

end;

end.

Задание 2.

Написать программу,
которая определяет количество учеников
в классе, чей рост превышает средний.

program
primer2;

const
b=172.6;

var
i,n:integer; x,r:real;

mark:
array[1..100] of real;

begin

x:=0; n:=5;

For
i:=1 to n do begin Writeln (‘Ðîñò ‘ ,i);

read (mark[i]);

r:=r+mark[i];

end;

r:=r/n;

for
i:=1 to n do begin if mark[i]>r then x:=x+1; end;

writeln
(‘y ‘ , x , ‘ человек рост выше среднего
‘,r);

End.

Задание 3.

Дан массив из
десяти целых чисел:{2;-3;5;0;7;-4;1;-1;-6;9;}

program
primer3;

Var
a:array[1..10] of real;

Var
i:integer;

Var
s:real;

Begin

For
i:=1 to 10 do

Begin

Writeln(‘Введите
a[‘,i,’]’);

Read(a[i]);

end;

s:=0;

For
i:=1 to 10 do

If
(a[i]>0) and( a[i]<=7) then s:=s+a[i];

writeln(‘s=’,s)

End.

Cамарский
Государственный Технический Университет

Министерство Образования и
науки российской Федерации

Федеральное агентство по образованию
Государственного образовательное
учреждение

Высшего профессионального
образования

Кафедра прикладной
математики и информатики

Отчет по
лабораторным работам по информатике

Вариант
№6

Выполнил :студент
1-ФТФ-6

Меженин Я.

Проверила: Егорова
Г.Ф

Самара
2012

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

В текстовом файле есть ведомость результатов сдачи экзаменов студенческой группы. Ведомость  содержит для каждого студента фамилию, имя отчество и оценки по пяти предметам. Студентов в группе не более 20 человек.
Написать программу, которая предоставляет следующую информацию:

  • список студентов (ФИО);
  • список студентов, которые сдали все экзамены только на 5;
  • список студентов, которые имеют хотя-бы одну тройку по экзаменам;
  • список студентов, у которых есть двойки. Если студент, имеет более чем одну двойку, он исключается из списка.

Задачу решил Naikon, он, как всегда, впереди всех. Собственно, вот код:

#include <iostream>
#include <fstream>
#include <windows.h>
#include <vector>
using namespace std;
struct Student
{
    void fn_student_list()///Выводим список студентов
    {
        for(unsigned int i=0;i<vec_FIO.size();++i)cout<<vec_FIO[i]<<endl;
    }
    vector<string>vec_FIO;
    vector<int> vec_math,vec_physics,vec_chemistry,vec_geometry,vec_rus;
    void fn_student_exam_5()///Список студентов которые сдали все экзамены только на пять
    {
        bool five=false;
        for(unsigned int i=0;i<vec_FIO.size();++i)
        {
            unsigned int sum=0;
            if(vec_math[i]==5)sum+=5;
            if(vec_physics[i]==5)sum+=5;
            if(vec_chemistry[i]==5)sum+=5;
            if(vec_geometry[i]==5)sum+=5;
            if(vec_rus[i]==5)sum+=5;
            if(sum==25)
            {
                cout<<vec_FIO[i]<<endl;
                five=true;
            }

        }
        if(five==false)cout<<"Таких студентов нет :("<<endl;
    }
    void fn_student_exam_3()///Список студентов которые имеют хотя-бы одну тройку по экзаменам
    {
        bool three=false;
        for(unsigned int i=0;i<vec_FIO.size();++i)
        {
            unsigned int sum=0;
            if(vec_math[i]==3)sum++;
            if(vec_physics[i]==3)sum++;
            if(vec_chemistry[i]==3)sum++;
            if(vec_geometry[i]==3)sum++;
            if(vec_rus[i]==3)sum++;
            if(sum>=1)
            {
                cout<<vec_FIO[i]<<endl;
                three=true;
            }
        }
        if(three==false)cout<<"Таких студентов нет :("<<endl;
    }
    void fn_student_exam_2()///Список студентов у которых есть двойки
    {
        bool two=false;
        for(unsigned int i=0;i<vec_FIO.size();++i)///удаляем студентов у котороыъ больше одной двойки
        {
            int sum=0;
            if(vec_math[i]==2)sum++;
            if(vec_physics[i]==2)sum++;
            if(vec_chemistry[i]==2)sum++;
            if(vec_geometry[i]==2)sum++;
            if(vec_rus[i]==2)sum++;
            if(sum>=2)
            {
                vec_FIO.erase(vec_FIO.begin()+i);
                vec_math.erase(vec_math.begin()+i);
                vec_physics.erase(vec_physics.begin()+i);
                vec_chemistry.erase(vec_chemistry.begin()+i);
                vec_geometry.erase(vec_geometry.begin()+i);
                vec_rus.erase(vec_rus.begin()+i);
            }
        }
        for(unsigned int i=0;i<vec_FIO.size();++i)///Выводим список студентов
        {
            unsigned int sum=0;
            if(vec_math[i]==2)sum++;
            if(vec_physics[i]==2)sum++;
            if(vec_chemistry[i]==2)sum++;
            if(vec_geometry[i]==2)sum++;
            if(vec_rus[i]==2)sum++;
            if(sum>=1)
            {
                cout<<vec_FIO[i]<<endl;
                two=true;
            }
        }
        if(two==false)cout<<"Таких студентов нет :("<<endl;
    }
};
int main()
{
    Student student;
    string str,fstr;
    SetConsoleOutputCP(1251);
    int value,math,physics,chemistry,geometry,rus,number_of_students=0;
    ifstream in("file.txt");
    if(!in)///Если не смогли открыть файл
    {
        cout<<"Can't open filen";
        return 1;
    }
    getline(in,str);
	while(in>>str)
    {
		fstr+=str+' ';
		for(int i=0;i<2;++i)
		{
			in>>str;
			fstr+=str+' ';
		}
        student.vec_FIO.push_back(fstr);
		fstr.clear();
		in>>math;
        student.vec_math.push_back(math);
		in>>physics;
        student.vec_physics.push_back(physics);
		in>>chemistry;
        student.vec_chemistry.push_back(chemistry);
		in>>geometry;
        student.vec_geometry.push_back(geometry);
		in>>rus;
        student.vec_rus.push_back(rus);
        number_of_students++;
        if(number_of_students==20)break;
    }
    in.close();///Закрыли файл
    start:cout<<"n1. Список студентов (ФИО)"<<endl;
    cout<<"2. Список студентов которые сдали все экзамены только на пять."<<endl;
    cout<<"3. Список студентов которые имеют хотя-бы одну тройку по экзаменам."<<endl;
    cout<<"4. Список студентов у которых есть двойки."<<endl;
    cout<<"(если студент имеет больше одной двойки он исключается из списка)."<<endl;
    cout<<"5. Введите 'q' для выхода"<<endl;
    cout<<"Пожалуйста сделайте свой выбор: ";
    char c;
    cin>>c;
    switch(c)
    {
        case '1':
        {
            student.fn_student_list();
            goto start;
        }
        case '2':
        {
            student.fn_student_exam_5();
            goto start;
        }
        case '3':
        {
            student.fn_student_exam_3();
            goto start;
        }
        case '4':
        {
            student.fn_student_exam_2();
            goto start;
        }
        case 'q':
        {
                return 0;
        }
        default:
        {
            cout<<"Неверный ввод :( Попробуйте сноваn";
            goto start;
        }
    }
    return 0;
}

Как я успел увидеть, код платформо-зависимый, обратите внимание на заголовки, строка 3, там подключен файл <windows.h>. То есть, под линуксом уже такую программу сразу не скомпилируешь. Но из этой ситуации можно легко выбраться. В программе функция SetConsoleOutputCP(1251); для установки кодировки cp-1251, это необходимо, если в консоли появляются каракули вместо символов русского алфавита. Но в линуксе с отображением кириллицы в консоли все в порядке, а значит и эта функция не нужна. Так что, те, кто на линуксе работают, перед компиляцией программы, смело комментируйте строки 3 и 95, они вам не нужны.

Входные данные из файла:

  • Ф.И.О Алгебра Физика Химия Геометрия Русс. язык
  • Иванов И. И. 3 4 4 4 5
  • Карпов И. С. 5 5 5 5 3
  • Петров С. К. 3 3 4 4 3
  • Борзенков А. А. 4 4 4 4 4
  • Константинов П. П. 5 5 5 5 5

Смотри на результат работы программы:

#java

#java

Вопрос:

Я пытаюсь написать программу, которая позволяет пользователю вводить серию результатов экзамена в виде целых чисел.

Я хочу, чтобы выходные данные выглядели примерно так:

Введите целое число или -99 для выхода: 80

Введите целое число или -99 для выхода: 95

Введите целое число или -99 для выхода: 65

Введите целое число или -99, чтобы выйти: -99

Наибольший: 95 Наименьший: 65

2-й запуск:

Введите целое число или -99, чтобы выйти: -99

Вы не вводили никаких чисел.

Я закончил первую часть, но, похоже, я не могу понять, как получить строку «Вы не вводили никаких чисел», когда я ввожу -99.

Это то, что у меня есть до сих пор.

 import java.util.Scanner;    // Needed for the Scanner class

/**
   This program shows the largest and smallest exam scores. The user
   enters a series of exam scores, then -99 when finished.
   UPDATED to show even number of points using if-statement
*/

public class Grades
{
   public static void main(String[] args)
   {
      int score = 0;       // Exam score
      int min = 100;       // Hold smallest score
      int max = 0;         // Hold largest score

      // Create a Scanner object for keyboard input.
      Scanner keyboard = new Scanner(System.in);

      // Display general instructions.
      System.out.println("Enter an integer, or -99 to quit: ");
      System.out.println();

      // Get the first exam score.
      System.out.print("Enter an integer, or -99 to quit: ");
      score = keyboard.nextInt();

      // Input exam scores until -99 is entered.
      while (score != -99)
      {
         // Add points to totalPoints.
         if (score > max)
            max = score;
         if (score < min)
            min = score;
         // Get the next number of points.
         System.out.print("Enter an integer, or -99 to quit: ");
         score = keyboard.nextInt();
      }

      // Display the largest and smallest score.
      System.out.println("Largest: "   max);
      System.out.println("Smallest: "   min);
   }
}
 

Комментарии:

1. после цикла и после вывода сбросьте ваши переменные на -99 , затем после цикла перед выводом проверьте, все ли переменные по-прежнему -99

Ответ №1:

Как насчет введения переменной, которая подсчитывает введенные числа и увеличивается в цикле while?

ИЛИ в качестве альтернативы вы можете проверить после цикла while, изменились ли числа:

 if(min > max) {
    System.out.println("You did not enter any numbers.");
}
else {
    System.out.println("Largest: "   max);
    System.out.println("Smallest: "   min);
}
 

Это сработало бы, потому что в начале вы инициализируете min переменную 100 и max переменную 0 , которая приведет true к min > max проверке, если не были введены числа.

Ответ №2:

Следующий код не работает при вводе 0 и 100:

 if (max = 0 amp;amp; min = 100)
    System.out.println("You did not enter any numbers");
else{
    System.out.println("Largest: "   max);
    System.out.println("Smallest: "   min);
}
 

Хорошим вариантом является использование дополнительной логической переменной для проверки любого ввода, отличного от -99:

 public class Grades
{
    public static void main(String[] args)
    {
        int score = 0;       // Exam score
        int min = 100;       // Hold smallest score
        int max = -100;         // Hold largest score
        boolean isAnyScore = false;

        // Create a Scanner object for keyboard input.
        Scanner keyboard = new Scanner(System.in);

        // Display general instructions.
        System.out.print("Enter an integer, or -99 to quit: ");
        System.out.println();

        // Input exam scores until -99 is entered.
        while(true)
        {
            System.out.print("Enter an integer, or -99 to quit: ");
            score = keyboard.nextInt(); //Get the exam score.
            if(score == -99) { break; }
            else { isAnyScore = true; }

            // Add points to totalPoints.
            if (score > max) { max = score; }
            if (score < min) { min = score; }
        }

        // Display the largest and smallest score.
        if(!isAnyScore) { System.out.println("You did not enter any numbers"); }
        else
        {
            System.out.println("Largest: "   max);
            System.out.println("Smallest: "   min);
        }
    }
}
 

Переменная isAnyScore имеет значение false . Когда вы вводите -99 в первом цикле запуска, он все равно будет false, потому что нет присваивания. Когда вы вводите что-то другое, чем -99 в первом цикле запуска, это всегда будет true (оно будет присвоено в любом цикле запуска как true). Когда isAnyScore значение изменяется с false на true, оно всегда будет true, потому что вы всегда присваиваете true, а не false .

Ответ №3:

В конце вашей программы:

 if (max == 0 amp;amp; min == 100)
    System.out.println("You did not enter any numbers");
else{
    System.out.println("Largest: "   max);
    System.out.println("Smallest: "   min);
}
 

Ответ №4:

 public static void main(String[] args) {
    int score = 0;       // Exam score
    int min = 100;       // Hold smallest score
    int max = 0;         // Hold largest score
    boolean isNumberEntered = false; //Test if any number has been entered.

    // Create a Scanner object for keyboard input.
    Scanner keyboard = new Scanner(System.in);

    // Input exam scores until -99 is entered.
    while (score != -99)
    {
        // Get the next number of points.
        System.out.print("Enter an integer, or -99 to quit: ");
        score = keyboard.nextInt();

        if (score == -99) {
            break;
        } else {
            // If the first number is entered
            if (!isNumberEntered)
                isNumberEntered = true;
            // Add points to totalPoints.
            if (score > max)
                max = score;
            if (score < min)
                min = score;
        }


    }

    if (isNumberEntered) {
        // Display the largest and smallest score.
        System.out.println("Largest: "   max);
        System.out.println("Smallest: "   min);
    } else {
        System.out.println("You did not enter any numbers!");
    }

}
 

Как насчет того, чтобы попробовать это? Вы хотите оставаться в цикле, пока не будет добавлено одно число, или htis так, как вы этого хотите?

Ответ №5:

Я думаю, что оценка составляет от 100 до 0.Поэтому я немного изменился. Если входные данные равны <0 и> 100 , вывод: «Вы не вводили никаких чисел».

   package chapter5;


import java.util.Scanner; 
public class Grades
{
   public static void main(String[] args)
   {

      int min = 100;       // Hold smallest score
      int max = 0;         // Hold largest score

      // Create a Scanner object for keyboard input.
      Scanner keyboard = new Scanner(System.in);

      // Display general instructions.
      System.out.print("Enter an integer, or -99 to quit: ");
     int score = keyboard.nextInt();
      if(score<0||score>100){
          System.out.println("You did not enter any numbers.");
      }

      // Input exam scores until -99 is entered.
      if(score>=0||score<=100){
      while (score != -99)
      {
         // Add points to totalPoints.
         if (score > max)
            max = score;
         if (score < min)
            min = score;
         // Get the next number of points.
         System.out.print("Enter an integer, or -99 to quit: ");
         score = keyboard.nextInt();
          if(score==-99){
                System.out.println();}

                else if(score!=-99amp;amp;score<0||score>100){
          System.out.println("You did not enter any numbers.");}

         }
      }
      // Display the largest and smallest score.
      System.out.println("Largest: "   max);
      System.out.println("Smallest: "   min);


   }
}
 

Ответ №6:

 public class Grades
{
 public static void main(String[] args) {
        int score = 0;       // Exam score
        int min = 100;       // Hold smallest score
        int max = 0;         // Hold largest score
        Scanner keyboard = new Scanner(System.in);
        // Display general instructions.
        int i = 1;
        do {
            System.out.println("Enter an integer, or -99 to quit: ");
            score = keyboard.nextInt();
            if (score > max) {
                max = score;
            }
            if (score < min) {
                min = score;
            }
            i  ;
            if (i > 5) {
                break;
            }
        } while ((score != -99));

        // Display the largest and smallest score.
        System.out.println("Largest: "   max);
        System.out.println("Smallest: "   min);
    }
}
 

Описание задачи

Программа принимает на вход оценки по пяти предметам и по определенным критериям выставляет уровень успеваемости.

Решение задачи

  1. Принимаем на вход пять значений и записываем их в пять разных переменных.
  2. Находим среднее этих оценок.
  3. При помощи условного оператора if-elif-else решаем, какой из пяти уровней успеваемости у студента с такими оценками.
  4. Конец.

Исходный код

Ниже дан исходный код программы определения успеваемости студента по его оценкам. Результаты работы программы также даны ниже.

sub1 = int(input("Введите оценку по первому предмету: "))
sub2 = int(input("Введите оценку по второму предмету: "))
sub3 = int(input("Введите оценку по третьему предмету: "))
sub4 = int(input("Введите оценку по четвертому предмету: "))
sub5 = int(input("Введите оценку по пятому предмету: "))
avg = (sub1+sub2+sub3+sub4+sub4)/5
if(avg >= 90):
    print("Уровень: A")
elif(avg >= 80 & avg < 90):
    print("Уровень: B")
elif(avg >= 70 & avg < 80):
    print("Уровень: C")
elif(avg >= 60 & avg < 70):
    print("Уровень: D")
else:
    print("Уровень: F")

Объяснение работы программы

  1. Пользователь вводит пять разных оценок, которые записываются в отдельные переменные.
  2. Далее для определения среднего эти оценки суммируются и делятся на количество оценок, то есть на число 5.
  3. Если среднее больше 90 баллов, то на экран выводится: «Уровень А».
  4. Если среднее больше 80, но меньше 90, то на экран выводится: «Уровень B».
  5. Если среднее больше 70, но меньше 80, то на экран выводится: «Уровень С».
  6. Если среднее больше 60, но меньше 70, то на экран выводится : «Уровень D».
  7. Если среднее меньше 60, то на экран выводится: «Уровень F».

Результаты работы программы

Пример 1:
Введите оценку по первому предмету: 85
Введите оценку по второму предмету: 95
Введите оценку по третьему предмету: 99
Введите оценку по четвертому предмету: 93
Введите оценку по пятому предмету: 100
Уровень: A
 
Пример 2:
Введите оценку по первому предмету: 81
Введите оценку по второму предмету: 72
Введите оценку по третьему предмету: 94
Введите оценку по четвертому предмету: 85
Введите оценку по пятому предмету: 80
Уровень: B

Понравилась статья? Поделить с друзьями:
  • Написать пробный егэ в москве по профильной математике
  • Написать пробный егэ в москве очно
  • Написать пробник по обществознанию егэ
  • Написать пробник егэ по химии
  • Написать пробник егэ по английскому