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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 14.05.2008, 17:04   #11
D-mon
Форумчанин
 
Регистрация: 22.06.2007
Сообщений: 414
По умолчанию

Согласен с -=<[Evklidd]>=-, я ошибся. Я без компилятора писал...
Нет невыполнимых задач, всё дело времени...
D-mon вне форума
Старый 14.05.2008, 17:09   #12
Карась
Участник клуба
 
Аватар для Карась
 
Регистрация: 26.10.2007
Сообщений: 1,244
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Вот:
Код:
Var mas:array [1..10] of real;         
.........
 sum:=sum+mas[i];
end;
writeln((sum-min-max)/10);
readln;
end.
Че тут париться
Почему на 10? Ведь сред. арифм уже щитаем у восьми элементов, ибо 2 удалили.
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым,
Попытка глубже понимать уже попахивает литром...
Карась вне форума
Старый 15.05.2008, 11:45   #13
veter_s_morya
ФорумчанинДжуниор
 
Аватар для veter_s_morya
 
Регистрация: 05.05.2008
Сообщений: 606
По умолчанию

Stilet, в коде нужно сделать отдельно ввод и отдельно вывод массива(2 begin). И прога с твоим кодом считает неверно.(ты ее тестировал?)
------------------------------
Ум без разума –это беда!
veter_s_morya вне форума
Старый 15.05.2008, 11:54   #14
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
Почему на 10?
Это просто пример )
Цитата:
в коде нужно сделать отдельно ввод и отдельно вывод
Это кто сказал?
Цитата:
И прога с твоим кодом считает неверно.(ты ее тестировал?)
Естесствоенно. Все там правильно окромя того что ее нужно подправить под твою задачу.
I'm learning to live...
Stilet вне форума
Старый 21.05.2008, 11:26   #15
veter_s_morya
ФорумчанинДжуниор
 
Аватар для veter_s_morya
 
Регистрация: 05.05.2008
Сообщений: 606
По умолчанию

Чтобы лучше разобраться, я пошел другим путем! (пока без минимума и максимума)
ввод циклоь и вывод циклом!
Код:
program sorevnovaniya;
var
mas:array[1..10] of integer;
i, j:integer;

begin
for i:=1 to 10 do mas[2]:=mas[i]+1;//после do терзают смутные сомнения

 begin randomize; mas[i]:=random(10)-2-j;begin j:=random(2)*2-1 end; //тут я использую случайное число (все честно)
 if mas[i]<=0 then mas[i]:=mas[i]+5;//не столь важно

 end;
begin
for i:=1 to 10 do //вывожу
writeln(mas[i]);
readln;
end;
end.
Почему средина массива нули?
------------------------------
Ум без разума –это беда!

Последний раз редактировалось veter_s_morya; 21.05.2008 в 11:45. Причина: забыл про j
veter_s_morya вне форума
Старый 21.05.2008, 12:27   #16
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
for i:=1 to 10 do mas[2]:=mas[i]+1;//после do терзают смутные сомнения
Зачем так делаешь?
I'm learning to live...
Stilet вне форума
Старый 21.05.2008, 12:45   #17
veter_s_morya
ФорумчанинДжуниор
 
Аватар для veter_s_morya
 
Регистрация: 05.05.2008
Сообщений: 606
По умолчанию

без mas[2]:=mas[i]+1 прога выводит последние 9 цифр одинаковыми. это ж ведь тоже брехология. Я хотел, чтобы 10 цифр массива выскакивали со случайным значением!

Уфф... Вот что я хотел видеть на данном этапе. А ларчик то открывался просто.
Код:
program sorevnovaniya;
var
mas:array[1..10] of integer;
i,j:integer;

begin
randomize;
for i:=1 to 10 do
 mas[i]:=random(10);


begin
for i:=1 to 10 do
writeln(mas[i]);
readln;

end;
end.
Теперь буду смотреть ваши подсказки, анализировать, делать эту задачу дальше(минимум и максиму, как там по условию). И еще, попутно хочу узнать, как стирать историю ответов выводимых на экран. Типо что нужно вставить в программу, чтобы очищалось? Вот в бейсике был cls.

сделал код понятным для себя...
Подскажите, почему не считает сумму?
Код:
program sorevnovaniya;
uses crt;
var
mas:array[1..10] of integer;
i, max, min, sum:integer;

begin
ClrScr;
sum:=0;
randomize;

for i:=1 to 10 do
 mas[i]:=random(10)+1;

for i:=1 to 10 do
write(mas[i],'  ');

begin
max:=mas[1];
for i:=1 to 10 do
if mas[i]>max then max:=mas[i];
min:=mas[1];
for i:=1 to 10 do
if mas[i]<min then min:=mas[i];
sum:=sum+mas[i];
end;

writeln;
writeln ('max ',max);
writeln ('min ',min);
writeln ('sum ',sum);
readln;

end.
------------------------------
Ум без разума –это беда!

Последний раз редактировалось Alex21; 17.06.2008 в 17:46. Причина: Объединил
veter_s_morya вне форума
Старый 21.05.2008, 17:18   #18
Карась
Участник клуба
 
Аватар для Карась
 
Регистрация: 26.10.2007
Сообщений: 1,244
По умолчанию

Я всегда думал что за это отвечало ClrScr;
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым,
Попытка глубже понимать уже попахивает литром...
Карась вне форума
Старый 22.05.2008, 11:35   #19
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

потому что sum:=sum+mas[i]; вне цикла.
Вы слишком вольно обращаетесь с begin end.

begin
max:=mas[1];
for i:=1 to 10 do
if mas[i]>max then max:=mas[i];
min:=mas[1];
for i:=1 to 10 do
if mas[i]<min then min:=mas[i];
sum:=sum+mas[i];
end;

так можно, но они лишние, а вот у цикла их не хватает:

for i:=1 to 10 do begin
if mas[i]<min then min:=mas[i];
sum:=sum+mas[i];
end;

и вообще поиск максимума, минимума и вычисление суммы можно сделать в одном цикле
alexBlack вне форума
Старый 22.05.2008, 12:25   #20
veter_s_morya
ФорумчанинДжуниор
 
Аватар для veter_s_morya
 
Регистрация: 05.05.2008
Сообщений: 606
По умолчанию

Думаю законченная программа выглядит так:
Код:
program sorevnovaniya;
uses crt;
var
mas:array[1..10] of integer;
i, max, min, sum,otv:integer;

begin
ClrScr;
sum:=0;
randomize;

for i:=1 to 10 do
 mas[i]:=random(10)+1;

for i:=1 to 10 do
write(mas[i],'  ');


max:=mas[1];
for i:=1 to 10 do
if mas[i]>max then max:=mas[i];
min:=mas[1];

for i:=1 to 10 do begin
if mas[i]<min then min:=mas[i];
sum:=sum+mas[i];
otv:=(sum-min-max) div 8; //скорее всего тут надо использовать Div
 end;

writeln;
writeln ('max ',max);
writeln ('min ',min);
writeln ('sum ',sum);
writeln ('otv ',otv);
readln;

end.
Если я ошибаюсь, то поправьте меня! А то скоро сдавать это дело.
------------------------------
Ум без разума –это беда!
veter_s_morya вне форума
Закрытая тема


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массивы в С\С++ Zahar11 Помощь студентам 4 31.05.2008 00:35
массивы ShenDy Общие вопросы C/C++ 4 17.04.2008 00:01
Массивы Snord Общие вопросы Delphi 2 12.04.2008 13:45