Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Ответ
 
Опции темы
Старый 17.03.2019, 19:16   #1
Diyana
Новичок
 
Регистрация: 17.03.2019
Сообщений: 2
Репутация: 10
По умолчанию Пишет что ожидалось константное выражение что неправильно?

Код:

Var  i,m,k,b:integer; T: array[1..k] of integer;
Begin
   Writeln ('Сколько чисел?'); readln (k);
   Writeln ('Какой диапазон?'); readln (m); readln (b);
   b:=m+abs(b);
   Randomize;
   for i:=1 to k do
   T[i]:=random(m)-b;
   if T[1]>0 then writeln ('Первое положительное')
   else if T[1]<0 then writeln ('Первое отрицательное');
 End.

______________________
Используйте тег [CODE] (кнопка [CODE] в форме сообщения) при вставке кода на форум. Подробнее в FAQ

Последний раз редактировалось Alex11223; 17.03.2019 в 19:27.
Diyana вне форума   Ответить с цитированием
Старый 17.03.2019, 19:26   #2
Alex11223
Модератор
Заслуженный модератор
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 17,909
Репутация: 3428

icq: 512-765
skype: alexp.frl
По умолчанию

Написано ж, k — не константное выражение.
Компилятор не знает в момент компиляции какого размера массив вы захотите.
Смотрите про динамические массивы или используйте константу.
Alex11223 на форуме   Ответить с цитированием
Старый 17.03.2019, 19:41   #3
Diyana
Новичок
 
Регистрация: 17.03.2019
Сообщений: 2
Репутация: 10
По умолчанию

то есть в k в константах можно закинуть любое значение?
Diyana вне форума   Ответить с цитированием
Старый 17.03.2019, 19:54   #4
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 24,811
Репутация: 5431
По умолчанию

Цитата:
Сообщение от Diyana Посмотреть сообщение
о есть в k в константах можно закинуть любое значение?
Можно закинуть:
Код:

const k=100;
Var  i,m,n,b:integer; T: array[1..k] of integer;
begin
  Writeln ('Сколько чисел?'); readln (n);
...

если Pascal новый, то можно использовать динамические массивы.

НО!!! Зачем Вам вообще массив в данной ситуации?!
Тут вполне можно обойтись совсем без массива.

Как звучит условие задачи?
Serge_Bliznykov на форуме   Ответить с цитированием
Старый 17.03.2019, 20:07   #5
ViktorR
Профессионал
 
Регистрация: 23.10.2010
Сообщений: 1,206
Репутация: 603
По умолчанию

На мой взгляд в этом вопросе:
Цитата:
то есть в k в константах можно закинуть любое значение?
ТС предполагается, что константу можно потом изменить, что конечно же не так.
На момент описания статического массива, а такой и описывается в программе, константа должна быть определена. Однажды определённая константа не может быть изменена в последующем.
В том случае, когда необходим массив, а его размер неизвестен, используется динамический массив. Размер динамического массива можно изменять в процессе работы программы (ищите в Сети ...).
__________________
Как-то так, ...
ViktorR вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Pascal ABC] В 7-ой строке пишет,что ожидалось имя процедуры или функции,не понимаю как это исправить и что делать! SMOKE SMOKE Паскаль 2 16.06.2017 19:57
Пишет ошибку: ожидалось имя процедуры или функции. Что не так? alexameleon Помощь студентам 3 22.11.2015 17:31
C++ в чем проблема? Не могу обратиться к элементам массива A. Пишет "выражение должно иметь тип указателя" Praud Помощь студентам 3 04.05.2014 18:53
Встречено '.', а ожидалось ';' cyberstorm Помощь студентам 1 08.10.2013 15:55
Выражение должно иметь константное значение? Си snqL Общие вопросы C/C++ 6 14.10.2011 22:12


16:39.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru