Паскаль! ! free pascal 2.6.4 напишите программу, которая выводит все простые числа, у которых цифры стоят строго в порядке убывания, в диапазоне от k до n ( 2 ≤ k ≤ n ≤ 100000 ). входные данные входная строка содержит два натуральных числа, разделённые пробелом, k и n ( 2 ≤ k ≤ n ≤ 100000 ). выходные данные программа должна вывести все простые числа, у которых цифры стоят строго в порядке убывания, в диапазоне от k до n в одну строку, разделив их пробелами. если таких чисел нет, нужно вывести число 0. примеры входные данные 400 600 выходные данные 421 431 521 541 входные данные 100 200 выходные данные 0
122
233
Ответы на вопрос:
Program n1; function isprost(x: integer): boolean; var i: integer; begin if x< 2 then isprost: =false else begin isprost: =true; for i : = 2 to round(sqrt(x)) do if x mod i = 0 then isprost: =false; end; end; function islow(x: integer): boolean; var n1,n2: integer; begin islow: =false; n2: =x mod 10; x: =x div 10; n1: =x mod 10; x: =x div 10; while (n1> n2) and (x< > 0) do begin n2: =n1; n1: =x mod 10; x: =x div 10; end; if n1> n2 then islow: =true; end; var k,n,i,f: integer; begin readln(k,n); f: =-1; for i: =k to n do if isprost(i) and islow(i) then begin write(i,' '); f: =1; end; if f=-1 then write(0); end.
Ошибки две: 1) не забывайте обнулять переменную k. у вас она не обнулялась, и так как каждый раз прибавлялось что-то, то максимум достигался на последнем числе. 2) нужно не количество, а сумма делителей, поэтому к k надо прибавлять не 1, а i. пример исправленной программы: var max, i, j, k, a, b, z: integer; begin max : = 0; readln(a, b); for i : = a to b do begin k : = 0; for j : = 1 to i do if (i mod j) = 0 then k : = k + j; if k > max then begin max : = k; z : = i; end; end; writeln(z); end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
vlad080509.05.2020 21:02
-
сехун227.04.2020 11:59
-
fedotovairochkp0cujm03.02.2020 21:09
-
адинаа130.12.2021 15:15
-
andrei18203.11.2022 13:38
-
Maximys200112329.09.2021 11:14
-
bahahas14.01.2021 23:27
-
fedor1daniil1204.01.2022 19:33
-
жанат1730.12.2022 23:33
-
arturdadayan16.08.2021 04:08
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.