Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Задача на массив

5.0K
22 ноября 2006 года
Vano
25 / / 10.03.2005
Текст задачи:

Пусть A - одномерный массив N вещественных чисел:
а) Поменять местами минимальный по модулю элемент и элемент, максимально удаленный от числа -0.93.
б) Проверить, является ли четвертый ненулевой элемент отрицательным, а если такого элемента нет - вывести сообщение.
в) Переставить все нулевые элементы в конец массива.

Я вроде бы все сделал кроме пункта а.

Код:
Program Zadacha;
Uses Crt;
Const n=10; d=-0.93;
Var
i1,i2,i:integer;
x,z:real;
A:Array[1..n] of real;
Begin
ClrScr;
Randomize;
For i:=1 to n do
A:=random;

{находим 4-ый ненулевой элемент}
i:=0; z:=0;
Repeat
i:=i+1;
if (A<>0) then
z:=z+1;
Until z>=4;
if (i>n) then
writeln('Ненулевого элемента в массиве нет') else
if (A<0) then writeln('Ненулевой меньше 0');

{Перставляем*все ненулевые элементы в конец}
For i1:=1 to n do
for i2:=1 to (n-i1) do
if (A[i2]=0) then
begin
z:=A[i2];
A[i2]:=A[i2+1];
A[i2+1]:=z;
end;
For i:=1 to n do
Writeln('A[',i,']=',A:3:2,' ;');
Readkey;
end.
257
22 ноября 2006 года
kosfiz
1.6K / / 18.09.2005
а) :
Код:
min:=abs(a[1]);
j:=1;
k:=1;
max:=abs(d-a[1]);
for i:=1 to n do
 begin
  if abs(a)<min then begin min:=abs(a); j:=i;end;
  if abs(d-a)>max then begin max:=abs(d-a); k:=i; end;
 end;
swap:=a[j];
a[j]:=a[k];
a[k]:=swap;
5.0K
23 ноября 2006 года
Vano
25 / / 10.03.2005
kosfiz, спасибо!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог