Одномерные массивы задача програмирования с++ 3. Имеются десять гирь весом a1, a2, ..., a10. Обозначим через ck — число
которыми можно составить вес k, то есть ck — это число решений уравнения a1x1 +
a2x2 +...+ a10x10 = k, где xi может принимать значения 0 или 1 (i=1,..., 10). Получить с0,
с1, ..., с10.
2. Меняется всего одна строка в программе:
program pr2;
type
student = record {объявление нового типа данных student}
LastName: string; {фамилия студента}
bal: array [1..5] of integer; {массив для 5-ти оценок}
average: real {средний студента}
end;
var
pupil: array [1..100] of student; {массив pupil (максимум из 100 элементов) типа student}
n, i, j, s: integer;{переменные целого типа}
begin
write('Введите количество студентов: ');
readln(n);
for i := 1 to n do
begin{запрос данных по n студентам}
with pupil[i] do
begin
Write('Введите фамилию студента №', i, ': '); {запрос фамилии студента под номером i}
Readln(LastName);
s := 0; {целочисленная переменная для определения суммы студента}
for j := 1 to 5 do
begin{цикл для обработки 5-ти оценок каждого студента}
write('Введите оценку за экзамен №:', j, ': ' );
readln(bal[j] );
s := s + bal[j]; {суммирование 5-ти оценок студента}
end;
average := s / 5; {определение среднего значения и запись в переменную average}
end;
end;
writeln;
writeln( 'Студенты, имеющие средний больший или равный 4');
for i := 1 to n do
begin
if pupil[i].average >= 4 then {если средний студента >=4}
write(pupil[i].LastName,', ');
end;
end.