
Вопрос задан 09.05.2019 в 18:29.
Предмет Информатика.
Спрашивает Скаляк Наталія.
Разработать программу на языке паскаль: 1) из массивов вещественных чисел А и В сформировать массив
С, записав в него элементы массивов А и В, которые не содержат "семерок" в восьмеричном представлении 2) в матрице целых чисел А (n.n) упорядочить те строки , в которых диагональные элементы не содержат семерок. ПОМОГИТЕ РЕШИТЬ ЛИБО 1 ЛИБО 2 ЗАДАЧУ

Ответы на вопрос

Отвечает Михно Діма.
Вторая задача, Паскаль АВС
Program Robiertmusin;
uses crt;
const n = 15;
type
MyArray = array [1..n,1..n] of integer;
procedure ArrayOutput(A: MyArray);
var i,j: integer;
begin
for i := 1 to n do
begin
for j:= 1 to n do
write(A[i,j]:4, ' ');
writeln;
end;
writeln;
end;
procedure RowSort(var A: MyArray; Nom: integer);
var i, j, temp: integer;
begin
for i := 1 to n-1 do
for j := i+1 to n do
if A[nom,i]>A[nom,j] then begin
temp:=A[nom,i];
A[nom,i]:=A[nom,j];
A[nom,j]:=temp;
end;
writeln(nom,'-я строка упорядочена');
end;
var
mass:MyArray;
i,j:integer;
begin
writeln('В матрице целых чисел А (n*n) программа упорядочивает те строки,'); writeln('в которых диагональные элементы не содержат семерок');
{Создаём начальный массив и выводим его}
randomize;
for i := 1 to n do
for j:= 1 to n do
mass[i,j]:=random(20);
ArrayOutput(mass);
{Просматриваем строки}
for i := 1 to n do
begin
if (mass[i,i]<>7) and (mass[n-i+1,n-i+1]<>7) then RowSort(mass, i);
end;
{Выводим итоговый массив}
writeln('Упорядоченный массив: ');
ArrayOutput(mass);
end.
Program Robiertmusin;
uses crt;
const n = 15;
type
MyArray = array [1..n,1..n] of integer;
procedure ArrayOutput(A: MyArray);
var i,j: integer;
begin
for i := 1 to n do
begin
for j:= 1 to n do
write(A[i,j]:4, ' ');
writeln;
end;
writeln;
end;
procedure RowSort(var A: MyArray; Nom: integer);
var i, j, temp: integer;
begin
for i := 1 to n-1 do
for j := i+1 to n do
if A[nom,i]>A[nom,j] then begin
temp:=A[nom,i];
A[nom,i]:=A[nom,j];
A[nom,j]:=temp;
end;
writeln(nom,'-я строка упорядочена');
end;
var
mass:MyArray;
i,j:integer;
begin
writeln('В матрице целых чисел А (n*n) программа упорядочивает те строки,'); writeln('в которых диагональные элементы не содержат семерок');
{Создаём начальный массив и выводим его}
randomize;
for i := 1 to n do
for j:= 1 to n do
mass[i,j]:=random(20);
ArrayOutput(mass);
{Просматриваем строки}
for i := 1 to n do
begin
if (mass[i,i]<>7) and (mass[n-i+1,n-i+1]<>7) then RowSort(mass, i);
end;
{Выводим итоговый массив}
writeln('Упорядоченный массив: ');
ArrayOutput(mass);
end.



Отвечает Chita Basconi.
Первая задача.
function Has7Octal(n: integer): Boolean;
var
p, q, r: integer;
begin
Result := false;
if n > 0 then begin
p := abs(n);
repeat
q := p div 8;
r := p mod 8;
if r = 7 then begin Result := true; p := 0 end
else p := q
until p = 0;
end;
end;
const
m = 10;
n = 7;
var
a: array[1..m] of integer;
b: array[1..n] of integer;
c: array[1..m + n] of integer;
i, k: integer;
begin
writeln('Введите элементы масcива А(', m, ')');
for i := 1 to m do read(a[i]);
writeln('Введите элементы масcива B(', n, ')');
for i := 1 to n do read(b[i]);
k := 0;
for i := 1 to m do
if not Has7Octal(a[i]) then begin
k := k + 1;
c[k] := a[i]
end;
for i := 1 to n do
if not Has7Octal(b[i]) then begin
k := k + 1;
c[k] := b[i]
end;
writeln('Результирующий массив');
for i := 1 to k do write(c[i]:7);
writeln
end.
Тестовый прогон:
Введите элементы масcива А(10)
3453 -2341 2424 15353 0 5344 93 7777 1274 -343
Введите элементы масcива B(7)
8644 8090 -12321 23432 5 1234 35
Результирующий массив
-2341 0 5344 93 -343 -12321 23432 5 1234 35
function Has7Octal(n: integer): Boolean;
var
p, q, r: integer;
begin
Result := false;
if n > 0 then begin
p := abs(n);
repeat
q := p div 8;
r := p mod 8;
if r = 7 then begin Result := true; p := 0 end
else p := q
until p = 0;
end;
end;
const
m = 10;
n = 7;
var
a: array[1..m] of integer;
b: array[1..n] of integer;
c: array[1..m + n] of integer;
i, k: integer;
begin
writeln('Введите элементы масcива А(', m, ')');
for i := 1 to m do read(a[i]);
writeln('Введите элементы масcива B(', n, ')');
for i := 1 to n do read(b[i]);
k := 0;
for i := 1 to m do
if not Has7Octal(a[i]) then begin
k := k + 1;
c[k] := a[i]
end;
for i := 1 to n do
if not Has7Octal(b[i]) then begin
k := k + 1;
c[k] := b[i]
end;
writeln('Результирующий массив');
for i := 1 to k do write(c[i]:7);
writeln
end.
Тестовый прогон:
Введите элементы масcива А(10)
3453 -2341 2424 15353 0 5344 93 7777 1274 -343
Введите элементы масcива B(7)
8644 8090 -12321 23432 5 1234 35
Результирующий массив
-2341 0 5344 93 -343 -12321 23432 5 1234 35



Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
1) Для решения первой задачи на Паскале можно использовать следующий алгоритм:
1. Объявляем массивы А, В и С типа array[1..n] of real, где n - размер массивов. 2. Считываем значения элементов массивов А и В. 3. Объявляем переменную k, которая будет использоваться для индексации элементов массива С. 4. Проходим по элементам массивов А и В с помощью цикла for i:=1 to n. 5. Внутри цикла проверяем, не содержит ли текущий элемент массива А "семерку" в восьмеричном представлении. Для этого можно преобразовать число в строку при помощи функции FloatToStr и проверить наличие символа '7' в строке. Если элемент не содержит "семерку", то записываем его в массив С и увеличиваем значение k на 1. 6. По окончании цикла выводим элементы


Топ вопросов за вчера в категории Информатика

Информатика 47

Информатика 33

Информатика 67

Информатика 18

Информатика 25

Информатика 563

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