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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.09.2011, 20:40   #1
vatakat
Пользователь
 
Регистрация: 23.03.2011
Сообщений: 17
По умолчанию Массивы.Паскаль.

В заданном датчиком случайных чисел одномерном массиве, посчитать кол-во положительных,отрицательных и нулевых элементов.

p.s. Буду ОЧЕНЬ благодарен если поможете решить до пятницы и опишите вкратце как это решается.
vatakat вне форума Ответить с цитированием
Старый 07.09.2011, 20:51   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Проблема-то в чем? Попробуйте сделать что-то сами, покажите код, расскажите что не получается.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 07.09.2011, 20:57   #3
vatakat
Пользователь
 
Регистрация: 23.03.2011
Сообщений: 17
По умолчанию

Проблема в том, что я полный 0 в программирование! :-(
поэтому и прошу написать и чуть чуть объяснить как решалось...
vatakat вне форума Ответить с цитированием
Старый 07.09.2011, 21:16   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ну в гугле хоть умеете искать?) Ключевые слова: заполнение массива случайными числами pascal,
посчитать кол-во положительных элементов pascal
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 07.09.2011, 21:21   #5
Zer0
Форумчанин
 
Аватар для Zer0
 
Регистрация: 13.12.2007
Сообщений: 788
По умолчанию

Код:
var a[50]:real; i,sP,sO,sN:integer;
begin
randomize;
sP:=0; sO:=0; sN:=0;
for i:=1 to 50 do begin
a[i]:=random(51)-100;
if a[i]>0 then inc(sp) else
if a[i]<0 then inc(so) else
inc(sN);
write (a[i]:0:2,' ');
end;
writeln;
writeln ('Otric = ',sO,', Poloj = ',sP,', Nul = ',sN);
readln;
end.
благодарность - сюда (не забываем писать от кого)
Zer0 вне форума Ответить с цитированием
Старый 07.09.2011, 21:49   #6
vatakat
Пользователь
 
Регистрация: 23.03.2011
Сообщений: 17
По умолчанию

Цитата:
Сообщение от Zer0 Посмотреть сообщение
Код:
var a[50]:real; i,sP,sO,sN:integer;
begin
randomize;
sP:=0; sO:=0; sN:=0;
for i:=1 to 50 do begin
a[i]:=random(51)-100;
if a[i]>0 then inc(sp) else
if a[i]<0 then inc(so) else
inc(sN);
write (a[i]:0:2,' ');
end;
writeln;
writeln ('Otric = ',sO,', Poloj = ',sP,', Nul = ',sN);
readln;
end.
Спасибо большое за решение!

А кто-нибудь сможет объяснить?
vatakat вне форума Ответить с цитированием
Старый 07.09.2011, 22:03   #7
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Что конкретно объяснить?

проходим весь массив циклом
Код:
for i:=1 to 50 do begin
Генерируем число от -100 до -50 вроде (обратите внимание, что все элементы всегда будут отрицательными) и записываем его в текущий элемент.
Код:
a[i]:=random(51)-100;
если элемент больше 0 тогда +1 в переменную sp, если меньше — so, иначе (если оба условия не выполнились т.е. остается только 0) — sn
Код:
if a[i]>0 then inc(sp) else
if a[i]<0 then inc(so) else
inc(sN);
выводим текущий элемент в консоль
Код:
write (a[i]:0:2,' ');
конец цикла)
Код:
end;

Кстати, там в объявлении массива ошибка.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 07.09.2011 в 22:13.
Alex11223 вне форума Ответить с цитированием
Старый 07.09.2011, 22:26   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Alex11223, молодца! Зачёт!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 07.09.2011, 22:35   #9
vatakat
Пользователь
 
Регистрация: 23.03.2011
Сообщений: 17
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Кстати, там в объявлении массива ошибка.
Спасибо за помощь!
Что за ошибка? в самой задаче или в решении?
vatakat вне форума Ответить с цитированием
Старый 07.09.2011, 22:53   #10
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

В объявлении массива
Код:
var a[50]:real;
У автора кода, видимо, перемещался синтаксис Си подобных языков и Паскаля.
Но я думаю вы без труда найдете гугле как правильно объявить массив в Паскале.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль массивы Gorny Помощь студентам 7 02.12.2009 19:13
массивы. паскаль. tanuschka Помощь студентам 7 05.10.2009 23:20
Паскаль. Массивы cucumber Помощь студентам 5 23.04.2009 21:20
массивы Паскаль Натуськ@25 Помощь студентам 1 13.02.2009 19:33
Паскаль и массивы RamireZ Паскаль, Turbo Pascal, PascalABC.NET 7 24.10.2008 17:20