Пятница, 10.01.2025
Pascal 4 All
[ · Новые сообщения · Участники · Правила форума · Поиск · RSS ]

 

  • Страница 1 из 1
  • 1
Модератор форума: Seqular, Pavel  

Решение программы на турбо паскале
SergoДата: Вторник, 21.10.2008, 16:45 | Сообщение # 1
Новичок
Группа: Пользователи
Сообщений: 1
Репутация: 0
Замечания: 0%
Статус: Offline
Решить задачу двумя способами, например, циклами и массивами
Задача: даны натуральное число n целые числа А1,...,Аn. Получить сумму положительных и число отрицательных членов последовательности А1....Аn. Помогите очень надо!
 
Van_der_VlaadДата: Вторник, 21.10.2008, 22:59 | Сообщение # 2
Старый знакомый
Группа: Пользователи
Сообщений: 35
Репутация: 1
Замечания: 0%
Статус: Offline
итак, мой способ (я не гуру в паскале, поэтому лучше, если мое решение потом проверить кто то из модераторов)

Code


var ,s,k,n:integer;
a:array[1..n] of integer;
begin
readln(n); s:=0; k:=0;
for i:=1 to n do
readln(a[i]);
for i:=1 to n do begin
if a[i]>0 then s:=s+a[i];
if a[i]<o then k:=k+1;
end;
writeln(s,k);
end.

Добавлено (21.10.2008, 15:59)
---------------------------------------------
это при помощи массивов. а вот при помощи одних лишь циклов...то тут у меня большие сомнения по реализация такого решения

 
AlexanderДата: Вторник, 21.10.2008, 23:35 | Сообщение # 3
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Всё хорошо, только n надо объявлять в константах и не нужно читать его с клавиатуры.
Очевидно, что лучше было использовать "else if"- это ускорит алгоритм, т.к. сравнивать заведомо положительное число с нулём не имеет смысла:
Code
for i:=1 to n do
    if a[i]>0 then
       Inc(s,a[i])
    else if a[i]<0 then
       Inc(k);


Скажем дружно- нафиг нужно!
 
AlexanderДата: Вторник, 21.10.2008, 23:37 | Сообщение # 4
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Quote (Van_der_Vlaad)
а вот при помощи одних лишь циклов...то тут у меня большие сомнения по реализация такого решения

Нельзя тут без массива обойтись- у нас по условию фиксированное, но всё же неизвестное количество переменных(n).


Скажем дружно- нафиг нужно!
 
Van_der_VlaadДата: Вторник, 21.10.2008, 23:50 | Сообщение # 5
Старый знакомый
Группа: Пользователи
Сообщений: 35
Репутация: 1
Замечания: 0%
Статус: Offline
насчет того что можно было использовать конструкцию else - я просто допускал возможность того, что будет например число 0.

а про циклы, я все таки был прав, я очень долго силился понять как можно ввести при помощи цикла неизвестное кол-во чисел и все таки подумал что такое вряд ли получается)

 
AlexanderДата: Среда, 22.10.2008, 00:39 | Сообщение # 6
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Quote (Van_der_Vlaad)
насчет того что можно было использовать конструкцию else - я просто допускал возможность того, что будет например число 0.

не "else", а "else if". Нуль я тоже учёл.


Скажем дружно- нафиг нужно!
 
SeqularДата: Среда, 22.10.2008, 06:44 | Сообщение # 7
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Скажу свое слово:
Решить задачу без массива не получится. Как уже сказал Alexander, число элементов у нас неизвестное. И нельзя его задавать во время выполнения. Только в константах.


Поддерживаю также проект сообщество молодых сисадминов
 
  • Страница 1 из 1
  • 1
Поиск:

Copyright MyCorp © 2025
Используются технологии uCoz
javascript:;" rel="nofollow" onclick="loginPopupForm(); return false;