• Предмет: Информатика
  • Автор: MisterHipster
  • Вопрос задан 7 лет назад

Пожалуйста, срочно! Прям очень срочно! Кто разбирается в информатике, помогите! Умоляю, ерунду не писать, всё нужно в Паскале. Спасибо большое) Дам 98 баллов)

Задание 1.

Дана строка и некоторое слово. Напечатать те предложения строки, которые содержат данное слово.



Задание 2.

Составить программу разложения данного натурального числа на простые множители. Например, 200=23•52.



Задание 3.

Составить программу вычисления суммы факториалов всех четных чисел от m до n.



Задание 4.

Определить наименьший элемент каждой четной строки матрицы A [M, N].

Ответы

Ответ дал: 7Наталья0
0

Ответ:

Объяснение:

Задание 1

PascalABC.NET 3.3.5, сборка 1659 от 09.04.2018

Внимание! Если программа не работает, обновите версию!

begin

 var s:=ReadlnString;

 var a:=s.ToWords('.').Select(t->Trim(t)).ToArray;

 var b:=s.ToWords(Arr('.',' '))

     .GroupBy(t->t).Select(t->(t.Key,t.Count))

     .Where(t->t[1]>1).Select(t->t[0]).ToArray;

 a.Cartesian(b,(p,q)->p.Contains(q)?p:'')

     .Where(t->t.Length>0).Distinct.PrintLines

end.

Примеры

Мама мыла полы. Маша ела кашу. Даша пила молоко. Таня мыла полы.

Мама мыла полы

Таня мыла полы

Мама мыла раму.

Маша ела кашу. Даша пила молоко. Таня мыла полы.

Мама мыла рамуТаня мыла полы

Задание 2

uses crt;

var n,i,k:integer;

begin

repeat

write('Введите натуральное число >0 n=');

read(n);

until n>0;

if n=1 then write('Простых множителей нет')

else

begin

 write(n,'=');

 i:=2;

 while i<=n do

  begin

   k:=0;

   while n mod i=0 do

    begin

     k:=k+1;

     n:=n div i;

    end;

   if i<n then

    begin

     if k=1 then write(i,'*')

     else if k>1 then write(i,'^',k,'*');

    end

   else

    begin

     if k=1 then write(i)

     else if k>1 then write(i,'^',k);

    end;

   i:=i+1;

  end;

end;

end.

Задание 3

   var n,m,i:integer;

   function fact(j:integer):longint;

   begin

   if j=1 then fact:=1 else fact:=j*fact(j-1);

   end;

   begin

   readln(m,n);

   for i:=m to n do if i mod 2 =0 then write(fact(i),' ');

   writeln;

   end.

Задание 4

program SomeProgram;

var i,n,summ:integer;

a:array[1..150] of integer;

begin

readln(n); {ввод размерности массива}

for i:=1 to n do readln(a[i]); {ввод массива}

summ:=0; {обнулим сумму на всякий случай}

for i:=1 to n do {собственно поиск суммы}

if a[i]=i then {коли номер элемента равен элементу, то...}

summ:=summ+a[i]; {...прибавить к сумме значение элемента}

Writeln('Сумма:',summ);

end.

Ответ дал: MisterHipster
0
https://znanija.com/task/32455239
Ответ дал: MisterHipster
0
https://znanija.com/task/32455231
Ответ дал: MisterHipster
0
https://znanija.com/task/32455218
Ответ дал: MisterHipster
0
Большущее Вам спасибо!!))
Ответ дал: MisterHipster
0
То что в скобках, в таких {...} (задание 4) тоже надо?
Вас заинтересует