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

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

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

 
 Ответить  Открыть новую тему 
> Помогите написать программу., Составить программу по данному условию в турбо паскале
сообщение
Сообщение #1





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

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


Вводиться 10 чисел. Выяснить, что встречается раньше: отрицательное число или ноль. Если раньше 0, то выяснить разницу между макс. и мин. числом, иначе вывести среднеарифметическое всех положительных чисел.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Профи
****

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

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


В чем именно проблемы?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





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

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


Я среднеарифметическое нашел, а максимум и минимум не могу.
Вот моя прога, помоги исправить ошибки.
var a,max,min,s,r,c,k,m,n,i: integer;
begin
readln(max);
readln(min);
s:=0;
k:=0;
for i:=3 to 10 do
begin
readln(a);
if a>0 then
begin
s:=s+a;
k:=k+1;
if a:=0 then
begin
n:=i;
end;
if a<0 then
begin
m:=i;
end;
end;
if a>max then
begin
max:=a;
end;
if a<min then
begin
min:=a
end;
end;
r:=max-min;
if max>0 then
begin
c:=(s+max)/k;
end
else
begin
c:=s/k;
end;
if n<m then
begin
writeln( r);
end
else
writeln( c);
end;
end.


М
Теги!!



Сообщение отредактировано: Lapp -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Профи
****

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

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


Эм,все делается немного по другому.Для начала проще завести массив в котором будут храниться все эти 10 цифр,согласись было бы неплохо видеть все вводимые данные.

const
n=10;
var
mas : array [1..n]of real;
i,S : integer;
max,min : real;
razn:real;
flag : integer;
begin
S:=0;
flag:=0;
for i:=1 to n do
read(mas[i]);
i:=1;
while flag=0 do
begin
if mas[i]<0 then
flag:=1;
if mas[i]=0 then
flag:=2;
inc(i);
end;

if flag=2 then
begin
i:=1;
max:=mas[i];
min:=mas[i];
for i:=2 to n do
begin
if mas[i]>max then
max:=mas[i];
if mas[i]<min then
min:=mas[i];
end;
razn:=max-min;
writeln('Max:',max:0:2);
writeln('Min:',min:0:2);
writeln('Raznost*:',razn:0:2);
end;
end.


Вот так можно найти максимум и минимум и их разность,если раньше 0,дальше я думаю сам сможеш осилить?
Еще возник вопрос
Цитата
иначе вывести среднеарифметическое

тобиш среднее арифметическое надо выводить не только когда отрицательное число раньше,но и ,если в массиве нету ни отрицательных ни нуля????Если да,то часть с flag можно упростить..

Кстати быстрельно измени название темы,оно должно быть информативным, и в твоем втором посте заключи код программы в теги.А то админ придет и накажет.

Цитата

writeln®;
end
else
writeln©;

Как ты эти символы после Wrilteln получил?))

Сообщение отредактировано: Krjuger -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гуру
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской
Ада: Разработчик
Embarcadero Delphi: Сторонник
Free Pascal: Разработчик

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


Цитата
Как ты эти символы после Wrilteln получил?))
Легко smile.gif Без тегов CODE движок форума сам преобразует C и R в скобочках к знакам копирайта/Registered соответственно.

Цитата
i:=1;
while flag=0 do
begin
if mas[i]<0 then
flag:=1;
if mas[i]=0 then
flag:=2;
inc(i);
end;
А введу я ВСЕ элементы больше 0 - что будет? Вылет за границу массива и кирдык программе? Нехорошо...

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


Профи
****

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

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


Ну да нехорошо,сделал сначала,чторбы при нуле работало, а потом посмотрел,если первый нуль, а не отрицательный(( пришлось переделывать,а протестить когда все элементы больше нуля забыл((
Благо лечиться несложно

while flag=0 and i<=n do

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7





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

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


Цитата(Krjuger @ 3.06.2011 20:35) *

Эм,все делается немного по другому.Для начала проще завести массив в котором будут храниться все эти 10 цифр,согласись было бы неплохо видеть все вводимые данные.

const
n=10;
var
mas : array [1..n]of real;
i,S : integer;
max,min : real;
razn:real;
flag : integer;
begin
S:=0;
flag:=0;
for i:=1 to n do
read(mas[i]);
i:=1;
while flag=0 do
begin
if mas[i]<0 then
flag:=1;
if mas[i]=0 then
flag:=2;
inc(i);
end;

if flag=2 then
begin
i:=1;
max:=mas[i];
min:=mas[i];
for i:=2 to n do
begin
if mas[i]>max then
max:=mas[i];
if mas[i]<min then
min:=mas[i];
end;
razn:=max-min;
writeln('Max:',max:0:2);
writeln('Min:',min:0:2);
writeln('Raznost*:',razn:0:2);
end;
end.


Вот так можно найти максимум и минимум и их разность,если раньше 0,дальше я думаю сам сможеш осилить?
Еще возник вопрос

тобиш среднее арифметическое надо выводить не только когда отрицательное число раньше,но и ,если в массиве нету ни отрицательных ни нуля????Если да,то часть с flag можно упростить..

Кстати быстрельно измени название темы,оно должно быть информативным, и в твоем втором посте заключи код программы в теги.А то админ придет и накажет.
Как ты эти символы после Wrilteln получил?))

Cможешь отправить мне всю программу полностью со среднеарифметическим и с максимумом и минимумо, ато я что то запутался!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


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

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

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


Цитата(vigun @ 4.06.2011 0:49) *
Cможешь отправить мне всю программу полностью со среднеарифметическим и с максимумом и минимумо, ато я что то запутался!

Что-то распутывайся, приятель.
Мы тут не для того, чтоб ты что-то сдал, а для того, чтоб ты что-то понял yes2.gif.
Говори, где запутался.


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





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

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


Цитата(Lapp @ 4.06.2011 4:05) *

Что-то распутывайся, приятель.
Мы тут не для того, чтоб ты что-то сдал, а для того, чтоб ты что-то понял yes2.gif.
Говори, где запутался.

Я не знаю как теперь сюда всунуть среднеарифметичекое!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


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

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

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


Цитата(vigun @ 4.06.2011 2:06) *
Я не знаю как теперь сюда всунуть среднеарифметичекое!

А пробовал?


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





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

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


Цитата(Lapp @ 4.06.2011 4:26) *

А пробовал?
да
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


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

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

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


Цитата(vigun @ 4.06.2011 2:27) *
да

Покажи, как.


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

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

 





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