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

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

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

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

Программа на Паскале

  • Автор темы Автор темы elena16
  • Дата начала Дата начала

elena16

Ученик
Регистрация
8 Янв 2014
Сообщения
5
Реакции
0
Баллы
0
Программа на Паскале

условие задачи:

Ƴi= ai – bmax, если ci >0
(amin2+ bsr3):ci, если ci < 0
√ (asr * bsr), если ci = 0
asr , bsr - средние значения массивов, bmax - наибольшее значение массива, amin - наименьшее значение массива

как будет всё это на Паскале?
 
А теперь более подробно, грамотным языком и по пунктам все задание

Немного вам помогу с формулировкой задания :)

Итак:
Дана система, описывающая отношения между ........ массивами следующим образом.........., в которой...........................
Все массивы имеют ..... тип, размерностью ..... элементов, значения элементов задаются ...............

Как говорится, заполните пропуски правильно :)
 
я наверное что-то не так написала, но у меня только это условие и как написать программу?
 
Допустим, что я понял задание правильно :))

Разобьем общую задачу на несколько подзадач для облегчения реализации.
1) определим три массива A,B,C с размерностью N и заполним их значениями. Так как не сказано, каким образом заполнять массивы, то используем для этого генератор псевдослучайных чисел.
2) анализируем массив A, находим элемент с минимальным значением и среднее арифметическое элементов массива.
3) анализируем массив B, находим элемент с максимальным значением и среднее арифметическое элементов массива.
4) заполняем массив Y размерностью N значениями, вычисленными согласно описанной системе.

Вот один из вариантов решения в FreePascal, на скорую руку и не самый оптимальный:
program mas_syst;
const n=10;
var a,b,c: array[1..n] of integer;
y: array[1..n] of real;
i,amin,bmax:integer;
asr,bsr:real;

{massiv a}
procedure mas_a;
begin
amin:=10000;
asr:=0;
writeln('massiv a:');
for i:=1 to n do begin
a:=random(50);
if a<amin then amin:=a;
asr:=asr+a;
writeln(a);
end;
asr:=asr/n;
writeln('asr=',asr:2:4);
writeln('amin=',amin);
end; {end of mas_a}

{massiv b}
procedure mas_b;
begin
bmax:=-10000;
bsr:=0;
writeln('massiv b:');
for i:=1 to n do begin
b:=random(50);
if b>bmax then bmax:=b;
bsr:=bsr+b;
writeln(b);
end;
bsr:=bsr/n;
writeln('bsr=',bsr:2:4);
writeln('bmax=',bmax);
end; {end of mas_b}

{massiv c}
procedure mas_c;
begin
writeln('massiv c:');
for i:=1 to n do begin
c:=random(100)-50;
writeln(c);
end;
end; {end of mas_c}

{main}
begin
randomize;
mas_a;
mas_b;
mas_c;
writeln('massiv y:');
for i:=1 to n do begin
if c>0 then y:=a-bmax else if c<0 then y:=(amin*amin+bsr*bsr*bsr)/c else y:=sqrt(asr*bsr);
writeln(y:2:4);
end;
readln
end.
При выполнении программы выводятся все массивы и переменные по порядку, затем результирующий массив. Если нужно больше элементов - просто увеличьте значение константы n. :))
 
да,да, вы правильно говорите. большое спасибо за понимание
 
Жду ваши вопросы, если что-то непонятно.
 
я очень благодарна, большое спасибо, все поняла
 
Назад
Сверху