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

Составить программу которая будет находить все простые числа из промежутка от 4 до 60. использовать рекурсивную функцию. паскаль

👇
Ответ:
Максим228prs
Максим228prs
10.05.2022

procedure recursiveprime(num:integer);

var

i:integer;

begin

{тупая проверка *числа* на простоту - пытаемся поделить на все числа от 2 до *числа*/2)

i:=2;

while i<(num div 2) and (num mod i <> 0) do inc(i)

if i=num div 2 then println(num,"- простое!');

if num<60 then recursiveprime(num+1);

end;

begin

recursiveprime(4);

end.

Объяснение:

ну как-то так.. паскаля под рукой нет, лет 7 назад последний раз трогал дельфи

рекурсивная процедура которая вызывает саму себя со следующим числом если переданое ему число меньше 60

проверка на простоту - пытаемся поделить на все числа от 2 до половины проверяемого числа и проверяем остатки.

надеюсь мысль понятна

4,7(62 оценок)
Открыть все ответы
Ответ:
emv63756
emv63756
10.05.2022
//FPC 2.6.4

var
  a: array of longint;
  size, i, j: longint;
begin
  randomize;
  writeln('Колво элементов: ');
  readln(size);

  setLength(a, size);
  write('Исходный случайный массив: ');
  for i:=0 to size-1 do
  begin
    a[i]:=random(201)-100;
    write(a[i], ' ');
  end;
  writeln;

  for i:=0 to size-2 do
    for j:=0 to size-i-2 do
      if a[j]>a[j+1] then
      begin
        a[j]:=a[j] xor a[j+1];
        a[j+1]:=a[j] xor a[j+1];
        a[j]:=a[j] xor a[j+1];
      end;

    writeln('Отсортированный массив: ');
  for i:=0 to size-1 do write(a[i], ' ');
  writeln;

end.
4,8(47 оценок)
Ответ:
амина11
амина11
10.05.2022
Function sq(var x1,y1,x2,y2,x3,y3: real):real;
begin
// вычисляем площадь треугольника с
// векторного произведения 
  sq:=abs((x2-x1)*(y3-y1)-(x3-x1)*(y2-y1))/2;
end;
// основная программа
var x,y,x1,y1,x2,y2,x3,y3,x4,y4,st,sp:real;
begin
  write('координаты 4 вершин x1 y1 x2 y2 x3 y3 x4 y4 через пробел:  ');
  readln(x1,y1,x2,y2,x3,y3,x4,y4);
  sp:=2*sq(x1,y1,x2,y2,x3,y3);
  write('координаты точки x y через пробел:  '); readln(x,y);
  st:=sq(x1,y1,x2,y2,x,y) + sq(x2,y2,x3,y3,x,y) +
        sq(x3,y3,x4,y4,x,y) + sq(x4,y4,x1,y1,x,y);
  if abs(sp-st)<1.0e-9 then
     writeln('точка принадлежит прямоугольнику')
  else writeln('точка не принадлежит прямоугольнику');   
end.

координаты 4 вершин x1 y1 x2 y2 x3 y3 x4 y4 через пробел:  1 4 6 9 9 6 4 1
координаты точки x y через пробел:  4 7
точка принадлежит прямоугольнику

координаты 4 вершин x1 y1 x2 y2 x3 y3 x4 y4 через пробел:  1 4 6 9 9 6 4 1
координаты точки x y через пробел:  1.5 1.6
точка не принадлежит прямоугольнику
4,7(31 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ