Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2008, 20:09   #1
Rid
Пользователь
 
Регистрация: 02.12.2008
Сообщений: 35
По умолчанию Вывести число, предшествующее первому отрицательному и число, следующее за последним отрицательным

Последовательность из не более чем NMAX целых чисел заканчивается нулём. Вывести число, предшествующее первому отрицательному и число, следующее за последним отрицательным.
Плиз одномерным массивом помогите решить!!!
Rid вне форума Ответить с цитированием
Старый 21.12.2008, 21:06   #2
Teor
Пользователь
 
Регистрация: 20.12.2008
Сообщений: 46
По умолчанию

Вроде так
Код:
program mm;
uses crt;
var mas:array[1..1000] of integer; i,n,k,ii:integer;
begin
clrscr;
writeln ('Введите количество');
readln (n);
for i:=1 to n-1 do
begin
mas[i]:=random(50)-random(50);
if mas[1]<0 then mas[1]:=random (50);
write (mas[i],'  ');
end;
mas[n]:=0;
write (mas[n],'  ');
writeln;
writeln;
k:=0;
for i:=1 to n-1 do
begin
if (mas[i+1]<0) and (k=0) then
begin
writeln ('1:',mas[i]);
k:=k+1;
end;
if mas[i]<0 then ii:=i+1;
end;
writeln ('2:',mas[ii]);
readkey
end.
Teor вне форума Ответить с цитированием
Старый 21.12.2008, 21:23   #3
Rid
Пользователь
 
Регистрация: 02.12.2008
Сообщений: 35
По умолчанию

Цитата:
Сообщение от Teor Посмотреть сообщение
Вроде так
Код:
program mm;
uses crt;
var mas:array[1..1000] of integer; i,n,k,ii:integer;
begin
clrscr;
writeln ('Введите количество');
readln (n);
for i:=1 to n-1 do
begin
mas[i]:=random(50)-random(50);
if mas[1]<0 then mas[1]:=random (50);
write (mas[i],'  ');
end;
mas[n]:=0;
write (mas[n],'  ');
writeln;
writeln;
k:=0;
for i:=1 to n-1 do
begin
if (mas[i+1]<0) and (k=0) then
begin
writeln ('1:',mas[i]);
k:=k+1;
end;
if mas[i]<0 then ii:=i+1;
end;
writeln ('2:',mas[ii]);
readkey
end.
Мне весь массив рандомить не нужно,я должен сам вводить элементы и окончанием будет ноль.
Rid вне форума Ответить с цитированием
Старый 21.12.2008, 21:37   #4
Teor
Пользователь
 
Регистрация: 20.12.2008
Сообщений: 46
По умолчанию

Тогда так
Код:
program mm;
uses crt;
var mas:array[1..1000] of integer; i,n,k,ii:integer;
begin
clrscr;
writeln ('Введите количество');
readln (n);
writeln ('Введите масив');
for i:=1 to n do read (mas[i]);
writeln;
writeln;
k:=0;
for i:=1 to n-1 do
begin
if (mas[i+1]<0) and (k=0) then
begin
writeln ('1:',mas[i]);
k:=k+1;
end;
if mas[i]<0 then ii:=i+1;
end;
writeln ('2:',mas[ii]);
readkey
end.
Teor вне форума Ответить с цитированием
Старый 22.12.2008, 16:50   #5
Rid
Пользователь
 
Регистрация: 02.12.2008
Сообщений: 35
По умолчанию

Спс большое
Rid вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
разложить число на простые множители и вывести результат pakusya Паскаль, Turbo Pascal, PascalABC.NET 6 15.11.2008 03:07
какое число останется последним f1rst Паскаль, Turbo Pascal, PascalABC.NET 4 29.10.2008 16:24
как вывести число qwerty34 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 25.08.2008 14:14
Найти и вывести все слова,у котоpых число гласных букв пpевышает число согласных. Briz Помощь студентам 2 11.05.2008 00:56
Ввести число N и определить делится ли оно без остатка на число M (VBA) Ivanich Microsoft Office Excel 7 24.04.2008 19:43