М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
karinatrunko
karinatrunko
24.01.2020 21:14 •  Информатика

Написать программу на паскале! написать программу для решения следующей : вычислить сумму объёмов и сумму полных поверхностей трёх круглых конусов,если для каждого конуса известны высота и радиус основания.использовать подпрограмму-функцию.

👇
Ответ:
kiry42rus
kiry42rus
24.01.2020
Function V(h,r:real):real;
Begin
result:=1/3*Pi*r*r*h // ABC, ABC.net
// V:=1/3*Pi*r*r*h // Turbo, Free
End;

Function SPP(h,r:real):real;
Begin
result:=Pi*r*(R+Sqrt(r*r+h*h));
End;

Var
   h,r,V0,S,SumS,SumV:real;

Begin
Write('h1 = ');ReadLn(h);
Write('r1 = ');ReadLn(r);
V0:=V(h,r);
SumV:=V0;

S:=SPP(h,r);
SumS:=S;
WriteLn('V1 = ',V0);
WriteLn('S1 = ',S);
WriteLn;

Write('h2 = ');ReadLn(h);
Write('r2 = ');ReadLn(r);
V0:=V(h,r);
SumV:=SumV+V0;

S:=SPP(h,r);
SumS:=SumS+S;
WriteLn('V2 = ',V0);
WriteLn('S2 = ',S);
WriteLn;

Write('h3 = ');ReadLn(h);
Write('r3 = ');ReadLn(r);
V0:=V(h,r);
SumV:=SumV+V0;

S:=SPP(h,r);
SumS:=SumS+S;
WriteLn('V3 = ',V0);
WriteLn('S3 = ',S);
WriteLn;

WriteLn('Sum V = ',SumV);
WriteLn('Sum S = ',SumS);
End.
4,7(10 оценок)
Открыть все ответы
Ответ:
Серг4й
Серг4й
24.01.2020
1. Надо добавить точку в последней строке программы. Иначе работать не будет.
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.
4,5(82 оценок)
Ответ:
23LOLKEK
23LOLKEK
24.01.2020
В запись student добавляете новое поле kurs,
Type student = recordLastName: string ; bal: array [1..5] of integer; 
kurs: integer;average: real end;
В цикле по студентам добавляете ввод курса
with pupil[i] do begin
Write ('Введите фамилию студента №', i ,': '); 
Readln (LastName);
 Write('Введите курс '); Readln(kurs);
В конце программы изменяете вывод
writeln ( 'Студенты первокурсники, имеющие средний больший или равный 4');
For i:=1 to n do beginif (pupil[i].average >=4) and (pupil[i].kurs = 1) then 
write (pupil[i].LastName,',  ');
4,8(36 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ