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

Паскаль 20 б решить с ! посчитать сколько в массиве простых элементов

👇
Ответ:
MrDackes
MrDackes
13.03.2023
1. Вот так это пишется с функцией

// PascalABC.NET 3.1, сборка 1200 от 13.03.2016
function IsPrime(n:integer):boolean;
begin
  if n<4 then Result:=True
  else begin
    var found:= (n mod 2 = 0);
    var p:=3;
    while (not found) and (sqr(p)<=n) do
      begin
      found:=(n mod p = 0);
      p+=2
      end;
    Result:=not found
    end
end;

begin
  Writeln('k=',ArrRandom(ReadInteger('n='),1,999).Println.
    Where(x->IsPrime(x)).Count)
end.

Тестовое решение:
n= 10
401 828 780 444 694 965 23 341 673 875
k=3

2. А вот так это пишется с процедурой

// PascalABC.NET 3.1, сборка 1200 от 13.03.2016
procedure IsPrime(n:integer; var res:boolean);
begin
  if n<4 then res:=True
  else begin
    var found:= (n mod 2 = 0);
    var p:=3;
    while (not found) and (sqr(p)<=n) do
      begin
      found:=(n mod p = 0);
      p+=2
      end;
    res:=not found
    end
end;

begin
  var a:=ArrRandom(ReadInteger('n='),1,999); a.Println;
  var k:=0;
  var prime:boolean;
  foreach var e in a do begin
    IsPrime(e,prime);
    if Prime then Inc(k)
    end;
  Writeln('k=',k)
end.

Тестовое решение:
n= 12
199 43 71 365 417 904 170 212 694 103 161 689
k=4
4,8(69 оценок)
Открыть все ответы
Ответ:
alekseyblohinov
alekseyblohinov
13.03.2023
Треугольник существует, если сумма длин двух любых его сторон больше длины третьей стороны.
Длина стороны может быть определена как расстояние между соответствующими сторонами треугольника:
\displaystyle L_{AB}=\sqrt{(x_B-x_A)^2+(y_B-y_A)^2

// PascalABC.NET 3.0, сборка 1160 от 05.02.2016
type
  Point=record
  x,y:real
  end;

procedure GetPoint(c:char;var M:Point);
begin
  Write('Введите координаты точки ',c,': ');
  Read(M.x,M.y)
end;

function Dist(a,b:Point):=sqrt(sqr(b.x-a.x)+sqr(b.y-a.y));

begin
  var A,B,C:Point;
  GetPoint('A',A); GetPoint('B',B); GetPoint('C',C);
  var ab:=Dist(A,B);
  var bc:=Dist(B,C);
  var ac:=Dist(A,C);
  if (ab<bc+ac) and (bc<ab+ac) and (ac<ab+bc) then
    Writeln('Треугольник существует')
  else Writeln('Треугольник не существует')
end.

Тестовое решение:
Введите координаты точки A: -6.9 -5.3
Введите координаты точки B: 0 11.4
Введите координаты точки C: 9 3
Треугольник существует
4,7(40 оценок)
Ответ:
madina319
madina319
13.03.2023
1)
Var
n,m,max,min:integer;
Begin
write('Введите число: ');
readln(n);
min:=9;   
max:=0;
while n>0 do 
begin 
m:=n mod 10; 
if m<min then min:=m; 
if m>max then max:=m; 
n:=n div 10; end;   
writeln('Максимальное число: ',max);   
writeln('Минимальное число: ',min);
End.
2)
var
i,count: integer;
n,s:string;
begin
writeln('Введите число: ');
readln(s);
writeln('Введите цифру: ');
readln(n);
for i:=1 to length(s) do
if(s[i]=n)then
count:=count+1;
writeln('Количество раз, когда встречается цифра = ',count);
end.
4,6(27 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ