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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 14.06.2008, 10:06   #11
Makarov
Форумчанин
 
Аватар для Makarov
 
Регистрация: 03.01.2008
Сообщений: 102
По умолчанию

Код:
program f1;
uses crt;
var
  ar:array[1..15] of word;
  i,nom,min:word;
begin
  clrscr;
  randomize;
  for i:=1 to 15 do
  begin
    ar[i]:=random(20);
    write(ar[i],' ');
  end;
  min:=ar[i];
  for i:=2 to 15 do
  begin
   if (min>ar[i]) then
    begin
     min:=ar[i];
     nom:=i;
    end;
  end;
  writeln;
  writeln('Index ',nom,' Chislo ',min);
  readln;
end.
Теория без практики мертва и бесплодна, практика без теории невозможна и пагубна.
Makarov вне форума
Старый 14.06.2008, 17:18   #12
Spiker01
Пользователь
 
Аватар для Spiker01
 
Регистрация: 13.06.2008
Сообщений: 22
По умолчанию

Нифига не работает . Мне надо чтоб пользователь сам вводил массивы от 1 до 15 , в конце должен выходить "Минимальное число d Индекс i" , например "Число 10 Индекс 3 " . При этом индекс это номер массива . Я пробывал так :
Код:
program MiniMassiv;
uses crt;
var
d:array[1..15] of word;
i:integer;
nom,min:real;
begin
clrscr; randomize;
for i:=1 to 15 do begin
begin
writeln('‚Введите массив №',i);
readln(d[i]);;
end;
min:=d[i];
begin
if min>(d[i]) then begin
min:=d[i];
nom:=i;
end;end;
writeln;writeln('?*¤ҐЄб',nom, '—Ёб«®',min);
readln;
end;
end.
Не работает . Помогите .(
Spiker01 вне форума
Старый 14.06.2008, 17:50   #13
Makarov
Форумчанин
 
Аватар для Makarov
 
Регистрация: 03.01.2008
Сообщений: 102
По умолчанию

Код:
program f1;
uses crt;
var
  ar:array[1..15] of word;
  i,nom,min:word;
begin
  clrscr;
  randomize;
  for i:=1 to 15 do
  begin
    writeln('vvedite chislo ',i);
    readln(ar[i]);
  end;
  min:=ar[1];
  for i:=2 to 15 do
  begin
   if (min>ar[i]) then
    begin
     min:=ar[i];
     nom:=i;
    end;
  end;
  writeln;
  writeln('Index ',nom,' Chislo ',min);
  readln;
end.
Теория без практики мертва и бесплодна, практика без теории невозможна и пагубна.
Makarov вне форума
Старый 14.06.2008, 19:57   #14
Spiker01
Пользователь
 
Аватар для Spiker01
 
Регистрация: 13.06.2008
Сообщений: 22
По умолчанию

Спасибо большое ,всё правильно работает . Обьясните пожалуйста что означает :
Код:
randomize;
и зачем ето писать?
Spiker01 вне форума
Старый 14.06.2008, 20:00   #15
Olympian
Форумчанин
 
Аватар для Olympian
 
Регистрация: 06.06.2008
Сообщений: 105
По умолчанию

randomize - меняет текущее числ X0 на другое.
Ведь в паскале стандартный рандом такой -
Xn+1 = (X0 * a + b) / c
Не замечал, что если без randomize - то у тебя каждый запуск проги одни и теже числа он генерирует...
Ну вот - для разнообразия, грубо говоря)
Olympian вне форума
Старый 15.06.2008, 21:07   #16
Spiker01
Пользователь
 
Аватар для Spiker01
 
Регистрация: 13.06.2008
Сообщений: 22
По умолчанию

На кнопку репутации нажал.Задали новую задачку :
Цитата:
Напишите программу ,которая сначало вводит десять положительных чисел в одномерный массив , потом складывает отдельно все положительные элементы массива , отдельно все отрицательные элементы, и выдаёт результат
Помойму там очепятка , вводишь десять положительных чисел , зачем тогда заставлять программу складывать отрицательные числа ?

Последний раз редактировалось Spiker01; 15.06.2008 в 23:14.
Spiker01 вне форума
Старый 16.06.2008, 15:42   #17
Plague
Забанен
Форумчанин Подтвердите свой е-майл
 
Аватар для Plague
 
Регистрация: 01.11.2006
Сообщений: 420
По умолчанию

Код:
s1:=0; // сумма положительных эл. мас.
s2:=0; // сумма отрицательных эл. мас.
for i:=1 to n do
if a[i]>0 then inc(s1,a[i]) else inc(s2,a[i]);
writeln(s1);
writeln(s2);
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
Plague вне форума
Старый 16.06.2008, 20:10   #18
Spiker01
Пользователь
 
Аватар для Spiker01
 
Регистрация: 13.06.2008
Сообщений: 22
По умолчанию

Спасибо за идею , я зделал так
Код:
Program SummaElement;
var
d:array[1..10] of real;
i:integer;
so:real;
sp:real;
begin
so:=0;
sp:=0;
for i:=1 to 10 do begin
writeln('Vvedite massiv # ',i);
readln(d[i]);
if (d[i]>0) then sp:=sp+d[i] else so:=so+d[i];end;
writeln;
writeln('Symma polozhitelnih elementov',sp);
writeln('Symma otricatelnih elementov',so);
readln;
end.
Всё работает . Пробывал заменеить
Код:
then inc(s1,a[i]) else inc(s2,a[i]);
почемуто выдаёт ошибку . Спрашивал у преподавателя насчёт опечатки, сказали что напечатали условие задачи неправильно.
Spiker01 вне форума
Старый 16.06.2008, 22:37   #19
Spiker01
Пользователь
 
Аватар для Spiker01
 
Регистрация: 13.06.2008
Сообщений: 22
По умолчанию

Задача :
Дан массив из 10 чисел. Если все элементы массива положительные ,вывести сообщение : "все положительные" , если все элементы массива отрицательные вывести сообщение : " все отрицательные".
Spiker01 вне форума
Старый 16.06.2008, 23:26   #20
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Цитата:
then inc(s1,a[i]) else inc(s2,a[i]);
inc(a,b) работает только для целых чисел, а у тебя real.

По задаче:
Код:
ko:=0;kp:=0;
for i:=1 to 10 do
  begin
    if a[i]<0 then ko:=ko+1
   else if a[i]>0 then kp:=kp+1;
  end;
if ko=10 then writeln('Все отрицательные!')
else if kp=10 then writeln('Все положительные!')
else then writeln('И те и другие!');

Последний раз редактировалось puporev; 16.06.2008 в 23:32.
puporev вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите решить задачу... studentIC Помощь студентам 3 12.03.2008 08:29
Помогите решить задачу. Кронос Помощь студентам 3 28.10.2007 14:11
Помогите решить задачу cL1zMa Паскаль, Turbo Pascal, PascalABC.NET 5 15.12.2006 11:04