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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.10.2011, 21:07   #1
Tagimasad
Пользователь
 
Аватар для Tagimasad
 
Регистрация: 26.10.2011
Сообщений: 17
Восклицание Лабораторка по массивам. Pascal

Задан массив A(n), заполненный случайными числами из диапозона [-12,27].
Найти сумму элементов, больших данного числа А.

Помогите студенту первокурснику))) Пожалуйста... мне на завтра нужно...

Последний раз редактировалось Tagimasad; 26.10.2011 в 21:20. Причина: ошибка
Tagimasad вне форума Ответить с цитированием
Старый 26.10.2011, 21:29   #2
Tagimasad
Пользователь
 
Аватар для Tagimasad
 
Регистрация: 26.10.2011
Сообщений: 17
По умолчанию

Кто-нибудь!!!!
Tagimasad вне форума Ответить с цитированием
Старый 26.10.2011, 21:30   #3
Tagimasad
Пользователь
 
Аватар для Tagimasad
 
Регистрация: 26.10.2011
Сообщений: 17
По умолчанию

Ладно... тогда хотя бы объясните что значит "... больших данного числа А"??
и где взять это число "А"?
Tagimasad вне форума Ответить с цитированием
Старый 26.10.2011, 21:52   #4
val_nnm
Форумчанин
 
Регистрация: 18.10.2009
Сообщений: 185
По умолчанию

Код:
const n=10;
type ar = array[0..n] of integer;

var i:integer;
    x:ar;
    A:integer;
    S:integer;
Begin
  randomize;
  for i := 0 to n do
    x[i] := random(27+12+1)-12;

  writeln('Исходный массив:');
  for i := 0 to n do Begin
    write(x[i]:5,' ');
  end;
  writeln;
  write('A=');
  readln(A);

  S := 0;
  for i := 0 to n do
    if (x[i]>A) then
      S := S + x[i];
  writeln;
  writeln;
  writeln('S=',S);
End.
На С# пишу лучше чем на русском.
"У меня правильнописание хромает. Оно хорошее, но почему-то хромает."
val_nnm вне форума Ответить с цитированием
Старый 26.10.2011, 21:53   #5
Tagimasad
Пользователь
 
Аватар для Tagimasad
 
Регистрация: 26.10.2011
Сообщений: 17
По умолчанию

Вот что у меня получилось (но там последнее условие не учтено):
program ZZZ;
uses crt;
var
a:array[1..100] of integer;
s:real;
n:integer;
BEGIN
clrscr;
s:=0;
write ('n=');
read (n);
randomize;
For i:=1 to n do
BEGIN
a[i]:=random(40)-12;
s:=s+a[i];
END;
writeln ('s=',s);
readkey;
END.
Tagimasad вне форума Ответить с цитированием
Старый 26.10.2011, 21:55   #6
Tagimasad
Пользователь
 
Аватар для Tagimasad
 
Регистрация: 26.10.2011
Сообщений: 17
По умолчанию

Цитата:
Сообщение от val_nnm Посмотреть сообщение
Код:
const n=10;
type ar = array[0..n] of integer;

var i:integer;
    x:ar;
    A:integer;
    S:integer;
Begin
  randomize;
  for i := 0 to n do
    x[i] := random(27+12+1)-12;

  writeln('Исходный массив:');
  for i := 0 to n do Begin
    write(x[i]:5,' ');
  end;
  writeln;
  write('A=');
  readln(A);

  S := 0;
  for i := 0 to n do
    if (x[i]>A) then
      S := S + x[i];
  writeln;
  writeln;
  writeln('S=',S);
End.
она нам пока не разрешает использовать "n" в массиве a:array[1..n]
Tagimasad вне форума Ответить с цитированием
Старый 26.10.2011, 21:58   #7
Tagimasad
Пользователь
 
Аватар для Tagimasad
 
Регистрация: 26.10.2011
Сообщений: 17
По умолчанию

и почему a:array[0..n], а не a:array[1..100] ?
и мы еще не описывали в тайп..

Последний раз редактировалось Tagimasad; 26.10.2011 в 22:01.
Tagimasad вне форума Ответить с цитированием
Старый 26.10.2011, 22:07   #8
val_nnm
Форумчанин
 
Регистрация: 18.10.2009
Сообщений: 185
По умолчанию

В данном случае a:array[0..n] непринципеален. Это всеголиш пример. У меня размер жестко задан. У вас нет.

Если передалать ваш код. + добавил вывод массива.

Код:
program ZZZ;
uses crt;
var
  x:array[1..100] of integer;
  s:integer;
  n:integer;
  A:integer;
  i:integer;
BEGIN
  clrscr;
  s:=0;
  write ('n=');
  read (n);
  write('A=');
  readln(A);
  randomize;
  For i:=1 to n do
  BEGIN
    x[i]:=random(40)-12;
    if (x[i]>A) then   
      s:=s+x[i];
  END;
  writeln('Исходный массив:');
  for i := 1 to n do Begin
    write(x[i]:5,' ');
  end;
  writeln;
  writeln ('s=',s);
  readkey;
END.
На С# пишу лучше чем на русском.
"У меня правильнописание хромает. Оно хорошее, но почему-то хромает."
val_nnm вне форума Ответить с цитированием
Старый 26.10.2011, 22:17   #9
Tagimasad
Пользователь
 
Аватар для Tagimasad
 
Регистрация: 26.10.2011
Сообщений: 17
Счастье

Цитата:
Сообщение от val_nnm Посмотреть сообщение
В данном случае a:array[0..n] непринципеален. Это всеголиш пример. У меня размер жестко задан. У вас нет.

Если передалать ваш код. + добавил вывод массива.

Код:
program ZZZ;
uses crt;
var
  x:array[1..100] of integer;
  s:integer;
  n:integer;
  A:integer;
  i:integer;
BEGIN
  clrscr;
  s:=0;
  write ('n=');
  read (n);
  write('A=');
  readln(A);
  randomize;
  For i:=1 to n do
  BEGIN
    x[i]:=random(40)-12;
    if (x[i]>A) then   
      s:=s+x[i];
  END;
  writeln('Исходный массив:');
  for i := 1 to n do Begin
    write(x[i]:5,' ');
  end;
  writeln;
  writeln ('s=',s);
  readkey;
END.
СПАСИБО БОЛЬШОЕ!
Tagimasad вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачи по массивам (Turbo Pascal) Adanel Помощь студентам 2 10.05.2011 20:19
Задачи по массивам (Turbo Pascal) Lerank Помощь студентам 20 23.02.2010 09:04
Ряд вопросов по массивам, pascal ene21 Помощь студентам 4 02.09.2009 22:02
ПАМАГИТЕ РЕШИТЬ ЗАДАЧУ ПО PASCAL ПО ДВУМЕРНЫМ МАССИВАМ legheboka Паскаль, Turbo Pascal, PascalABC.NET 2 17.06.2009 00:43
вопрос по МАССИВАМ СИМВОЛОВ(Pascal) -ushёl- Помощь студентам 6 15.03.2009 23:37