• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Нужна помощь в задаче! Пожалуйста, надо сдать!

во второй задаче для вычисления модуля текущего элемента используйте функцию abs().
 
AlexZir, Спасибо большое за первую задачу) К моменту выкладывания я ее решил сам) Вот со второй трудности, лучше бы её решили вместо первой)) Буду ждать вторую) если вам не трудно строчить программы, настрочите мне пожалуйста, потому что мне этого никогда не понять...(
 
Дана действительная матрица 18 х n. Найти значение наибольшего по модулю элемента матрицы, а также индексы данного элемента.
program mas2;
uses crt;
const n=20;
var a: array[1..18,1..n] of real;
i,j,ki,kj:integer;
amax:real;
begin
randomize;
writeln('Выберите способ заполнения массива (1-авто, 2-вручную)');
repeat
read(p);
until (p=1) or (p=2);
for i:=1 to 18 do
for j:=1 to n do begin
if p=1 then a[i,j]:=random(400)/(random(30)+1)-50 else read(a[i,j]);
end;
writeln;
for i:=1 to 18 do begin
for j:=1 to n do
write(a[i,j]:5:5);
writeln;
end;
amax:=abs(a[1,1]);
ki:=1;
kj:=1;
for i:=1 to 18 do
for j:=1 to n do
if abs(a[i,j])>amax then begin amax:=abs(a[i,j]); ki:=i; kj:=j; end;
writeln;
writeln('Наибольший по модулю элемент имеет индексы ',ki,' и ',kj,' и равен ',amax);
readln;
end.
Строчат программы недостудентусы, а мы их создаем с нуля :)). Это делать не столько трудно, как некогда.

Исправил, попробуйте такой вариант!
 
Програмка не работает, ошибка - деление на ноль в строчке

if p=1 then a[i,j]:=random(400)/random(30)-50 else read(a[i,j])
 
Естественно, будет ошибка деления на ноль, я ведь прогу в среде не проверял, просто накидал примерный листинг. Ошибку исправил, нужно было в знаменателе дроби еще 1 прибавлять, чтобы от 0 избавиться. Пробуйте.
 
спасибо, прокатило)) выручили, информатика будет через семестр теперь, встретимся через год))))))))))))
 
Назад
Сверху