IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Задача с применением подпрограмм, требуется помощь в решении задач...
сообщение
Сообщение #1


Студент-трудоболик
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Юрий

Репутация: -  1  +


Здравствуйте.
Задача такова:
Дано: массивы (А,10), B(15). Поменять местами их первые положительные элементы. Для находения первого положительного элемента и его номера в массиве использовать подпрограмму.
Мне бы программу задачи, без блок-схемы...
Сам пытался решить - но не получается, "застреваю" на нахождении первого положительного числа, найти-то я его нахожу, только не знаю как сделать, чтобы после нахождения этого элемента, в цикле не просматривались последующие...

Сообщение отредактировано: z1ng -


--------------------
Это уравнение вы никогда не будете использовать, когда вырастете, но если вы думаете, что его можно не запоминать, то ошибаетесь.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата
найти-то я его нахожу, только не знаю как сделать, чтобы после нахождения этого элемента, в цикле не просматривались последующие...
Ну, это смотря в каком цикле... Если использовать While , например, так:
i := 1;
while (i <= n) and (a[ i ] <= 0) do i := i + 1;

, то проблема исчезнет сама собой. После цикла i будет равно или (n + 1) - если положительных элементов в массиве нет, или индексу первого положительного эл-та.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Студент-трудоболик
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Юрий

Репутация: -  1  +


Благодарю.
volvo, а с программой не поможешь?

Сообщение отредактировано: z1ng -


--------------------
Это уравнение вы никогда не будете использовать, когда вырастете, но если вы думаете, что его можно не запоминать, то ошибаетесь.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Студент-трудоболик
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Юрий

Репутация: -  1  +


еще вот такая задачка:
Рост студентов 3-х групп, состоящих из 15,12,18 человек, размещен в 3 массивах. Требуется определит средний рост студентов каждой группы, а также сколько студентов в 3-х группах имеет рост выше 180 см. Определение среднего роста и количества студентов одной группы с ростом выше 180 см осуществлять в подпрограмме.
Не получается: посчитать кол-во студентов во всех 3-х группах....
..................................
процендура ввода...
................................

function ROST (x:vect; n:int):real;
var k:int; SR:real; i:int;
begin S:=0; k:=0;
for i:=1 to n do begin
S:=S+x[i];
if x[i]>180 then {***} k:=k+1 {***};
end;
SR:=S/n;
ROST:=SR;
end;


Как сделать, чтобы в п/п после ввода каждого массива осуществлялся подсчет студентов, у которых рост выше 180 и чтобы после ввода всех массивов, посчитать эту сумму?
в файле показано блок-схема всего алгоритма...

Сообщение отредактировано: volvo -


Эскизы прикрепленных изображений
Прикрепленное изображение

--------------------
Это уравнение вы никогда не будете использовать, когда вырастете, но если вы думаете, что его можно не запоминать, то ошибаетесь.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Студент-трудоболик
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Юрий

Репутация: -  1  +


blink.gif вот досада...


--------------------
Это уравнение вы никогда не будете использовать, когда вырастете, но если вы думаете, что его можно не запоминать, то ошибаетесь.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(z1ng @ 26.04.2009 16:01) *
вот досада...

z1ng, читай правила - не будет досады.

1. одна тема - одна задача;
2. программный код заключать в тэги;
3. doc-и не прикреплять.

Неужели так трудно прочесть Правила?


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Студент-трудоболик
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Юрий

Репутация: -  1  +


Извините, я понял....только в doc я выложил блок-схему


--------------------
Это уравнение вы никогда не будете использовать, когда вырастете, но если вы думаете, что его можно не запоминать, то ошибаетесь.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 5.05.2024 7:28
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name