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

Написать Программу(В паскале или нет) по данной блок-схеме

Показать ответ
Ответ:
geragyy
geragyy
15.12.2020 01:55
На паскалі:
program _1;
var a,b,c,i:integer;
begin
write('Введіть чисельник дробу: ');
readln(a);
write('Введіть знаменник дробу: ');
readln(b);
if a>b then c:=a else c:=b;
for i:=1 to c do
if ((a mod i)=0) and ((b mod i)=0) then
begin
a:=a div i;
b:=b div i;
end;
writeln(a,'/',b);
end.

На Сішці:

#include <iostream>
using namespace std;
int main(){
setlocale(LC_ALL, "Ukr");
int a,b,c,i;
cout<<"Введіть чисельник: "<<endl;
cin>>a;
cout<<"Введіть знаменник: "<<endl;
cin>>b;
(a>b)?c=a:c=b;
for (i=1;i<=c;i++){
if ((a%i==0)&&(b%i==0)){
a=a/i; b=b/i;
}
}
cout<<a<<"/"<<b<<endl;
system("pause");
}
Буду вдячний за "Кращу відповідь"
0,0(0 оценок)
Ответ:
gulya19860630
gulya19860630
19.02.2020 15:50
Дурацкая по своей трудоемкости задача, если делать её вручную.
А если написать полную программу и вставить туда счетчик вызовов F(n), то окажется, что для вызова F(6) процедура будет вызвана 97 раз. При каждом вызове выводится звездочка, поэтому их будет выведено тоже 97.

Проверка выполнялась по следующей программе:
var
  k:integer;

procedure F(n: integer);
begin
  writeln('*');
  k:=k+1;
  if n > 0 then begin
    F(n - 3);
    F(n - 2);
    F(n div 2);
    F(n div 2);
  end
end;

begin
  k:=0;
  F(6);
  Writeln(k)
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота