В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
Губотрах
Губотрах
20.04.2023 13:22 •  Информатика

с информатикой умоляю,
Составьте программу вычисления количества корней для каждого из трех квадратных уравнений с данными коэффициентами, используя подпрограмму вычисления количества корней квадратного уравнения Ax2+Bx+C=0 (A, B, C - вещественные параметры, А<>0) по значению дискриминанта D:=b2-4ac.

Протокол работы программы:
A1= 3.00 B1= -15.00 C1= 12.00
A2= 1.00 B2= -3.00 C2= 3.00
A3= 1.00 B3= 5.00 C3= 7.00
количество корней первого уравнения = 2
количество корней второго уравнения = 0
количество корней третьего уравнения = 0

Показать ответ
Ответ:
Музалевская
Музалевская
11.01.2022 20:32
Function prime(x:integer):boolean;
var
 t:boolean;
 d:integer;
begin
 t := true;
 d := 2;
 while t and (d*d <= x) do
   begin
   if x mod d = 0 then 
     t := false;
   d := d + 1
   end;
 prime := t
end;

function order(x:integer):boolean;
var
 t:boolean;
 d:integer;
begin
 d := -1;
 repeat
   t := x mod 10 > d;
   d := x mod 10;
   x := x div 10
 until not t or (x = 0);
 order := t
end;

var
 t:boolean;
 i,k,n:integer;
begin
 t := false;
 read(k,n);
 for i := k to n do
   if prime(i) then
   if order(i) then
     begin
     write(i,' ');
     t := true
     end;
 if not t then
   write(0)
end.
0,0(0 оценок)
Ответ:
magauiyaa
magauiyaa
25.06.2020 22:47
Для того, чтобы эта программа заработала надо добавить перед описанием процедуры F следующую строчку:
procedure G(n: integer);forward;
Так как в процедуре F есть вызов процедуры G описанной дальше по тексту программы.
После исправления кода и запуска программы с F(12) получим 17 звездочек. По шагам это будет выглядеть так:

 Вызов процедуры F и выполнение
* n = 12
* n = 12
Вызов процедуры G и выполнение
* n = 11
* n = 11
Вызов процедуры F и выполнение
* n = 9
* n = 9
Вызов процедуры G и выполнение
* n = 8
* n = 8
Вызов процедуры Fи выполнение
* n = 6
* n = 6
Вызов процедуры G и выполнение
* n = 5
* n = 5
Вызов процедуры F и выполнение
* n = 3
* n = 3
Вызов процедуры G и выполнение
* n = 2
* n = 2
Вызов процедуры F и выполнение
* n = 0

Ниже записаны две рекурсивные функции (процедуры): f и g.сколько символов «звёздочка» будет напечата
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота