Turbo Pascal 7.0 Ошибка в переменной.
| |
Naigelgog | Дата: Среда, 07 Декабря 2011, 17:22 | Сообщение # 1 |
частый гость
Сейчас нет на сайте
| Итак. Есть некая переменная pr2 и есть диапазон значений, который я хочу придать этой переменной. Однако, после компиляции Turbo Pascal выдал мне, что после 10 должна быть точка с запятой. Ответьте мне пожалуйста, с какого ей там быть? Оо
Никто не ждал, а я вернулся. о.о Отныне зовите меня Ауткастом (жалко, что нельзя поменять логин...).
С.Н. Лукин. Turbo Pascal 7.0 Самоучитель для начинающих. Прочитано. Николай Прохоренок. Html, JavaScript, PHP и MySQL.Джентельменский набор Web-мастера. Прочитано 57 страниц из 867.
|
|
| |
noTformaT | Дата: Среда, 07 Декабря 2011, 17:33 | Сообщение # 2 |
Ukrainian independent game developer
Сейчас нет на сайте
| Quote (Naigelgog) Итак. Есть некая переменная pr2 и есть диапазон значений, который я хочу придать этой переменной. Однако, после компиляции Turbo Pascal выдал мне, что после 10 должна быть точка с запятой. Ответьте мне пожалуйста, с какого ей там быть? Оо Code program Hello; type MyType = 10..40; var pr2:MyType; begin pr2 = 10; end.
@noTformaT
|
|
| |
Naigelgog | Дата: Среда, 07 Декабря 2011, 17:39 | Сообщение # 3 |
частый гость
Сейчас нет на сайте
| Разве дальше pr2 будет принимать значение диапазона?
Никто не ждал, а я вернулся. о.о Отныне зовите меня Ауткастом (жалко, что нельзя поменять логин...).
С.Н. Лукин. Turbo Pascal 7.0 Самоучитель для начинающих. Прочитано. Николай Прохоренок. Html, JavaScript, PHP и MySQL.Джентельменский набор Web-мастера. Прочитано 57 страниц из 867.
Сообщение отредактировал Naigelgog - Среда, 07 Декабря 2011, 17:39 |
|
| |
noTformaT | Дата: Среда, 07 Декабря 2011, 17:41 | Сообщение # 4 |
Ukrainian independent game developer
Сейчас нет на сайте
| Quote (Naigelgog) Разве дальше pr2 будет принимать значение диапазона? да, оно может принять одно значение из диапазона 10...40
type Index = 1..25; var i : Index; {переменная принимает значения} {только в диапазоне от 1 до 25}
@noTformaT
|
|
| |
Naigelgog | Дата: Среда, 07 Декабря 2011, 17:49 | Сообщение # 5 |
частый гость
Сейчас нет на сайте
| Нет, дело в том, что мне надо, что-бы оно просматривало, равна ли другая переменная переменной pr2.
Никто не ждал, а я вернулся. о.о Отныне зовите меня Ауткастом (жалко, что нельзя поменять логин...).
С.Н. Лукин. Turbo Pascal 7.0 Самоучитель для начинающих. Прочитано. Николай Прохоренок. Html, JavaScript, PHP и MySQL.Джентельменский набор Web-мастера. Прочитано 57 страниц из 867.
|
|
| |
noTformaT | Дата: Среда, 07 Декабря 2011, 17:51 | Сообщение # 6 |
Ukrainian independent game developer
Сейчас нет на сайте
| Quote (Naigelgog) Нет, дело в том, что мне надо, что-бы оно просматривало, равна ли другая переменная переменной pr2. условие чтоли? что-типа находится ли значение переменной в этом диапазоне???
@noTformaT
|
|
| |
Naigelgog | Дата: Среда, 07 Декабря 2011, 17:51 | Сообщение # 7 |
частый гость
Сейчас нет на сайте
| А значением pr2 должен быть диапозон от 10 до 40. Code pr2=10 ..40; if vozrast=pr2 then goto m3 else goto m2; Что-то вроде этого...Добавлено (07.12.2011, 17:51) ---------------------------------------------
Quote что-типа находится ли значение переменной в этом диапазоне??? Именно.
Никто не ждал, а я вернулся. о.о Отныне зовите меня Ауткастом (жалко, что нельзя поменять логин...).
С.Н. Лукин. Turbo Pascal 7.0 Самоучитель для начинающих. Прочитано. Николай Прохоренок. Html, JavaScript, PHP и MySQL.Джентельменский набор Web-мастера. Прочитано 57 страниц из 867.
|
|
| |
Vinchensoo | Дата: Среда, 07 Декабря 2011, 17:52 | Сообщение # 8 |
Злобный социопат с комплексом Бога
Сейчас нет на сайте
| Блин.
Code var pr2:integer; begin randomize; pr2:= random(31)+10; end; Не проще?
|
|
| |
Naigelgog | Дата: Среда, 07 Декабря 2011, 17:55 | Сообщение # 9 |
частый гость
Сейчас нет на сайте
| Не катит.
Никто не ждал, а я вернулся. о.о Отныне зовите меня Ауткастом (жалко, что нельзя поменять логин...).
С.Н. Лукин. Turbo Pascal 7.0 Самоучитель для начинающих. Прочитано. Николай Прохоренок. Html, JavaScript, PHP и MySQL.Джентельменский набор Web-мастера. Прочитано 57 страниц из 867.
|
|
| |
GameMix | Дата: Среда, 07 Декабря 2011, 18:32 | Сообщение # 10 |
старожил
Сейчас нет на сайте
| Naigelgog, а почему бы не сделать так: Code if ((vozrast >= 10) and (vozrast <=40)) then goto m3 else goto m2;
Steel Standoff - 2D аркада. Мои статьи
|
|
| |
masb8ly-GC | Дата: Среда, 07 Декабря 2011, 21:17 | Сообщение # 11 |
постоянный участник
Сейчас нет на сайте
| goto лучше не используй. В высших учебных этого совсем не приветствуют. Да и на олимпиадах не очень любят его. Почему бы не написать эти m3 и m2 прямо в цикле? Или через функцию сделать?
Backend Developer ESIS Client Side Developer Room8Studio Technical Leader Lucid Reality Labs Chief Technology Officer The Intruders Chief Technology Officer RoyalePlay Games
Сообщение отредактировал masb8ly-GC - Среда, 07 Декабря 2011, 21:18 |
|
| |
Naigelgog | Дата: Четверг, 08 Декабря 2011, 16:06 | Сообщение # 12 |
частый гость
Сейчас нет на сайте
| Это не для школы. Просто програмку делаю. (Только она сырая ужасно, но...) Добавлено (08.12.2011, 16:06) --------------------------------------------- GameMix, при твоём коде он одновременно оба маркера выполняет.
Никто не ждал, а я вернулся. о.о Отныне зовите меня Ауткастом (жалко, что нельзя поменять логин...).
С.Н. Лукин. Turbo Pascal 7.0 Самоучитель для начинающих. Прочитано. Николай Прохоренок. Html, JavaScript, PHP и MySQL.Джентельменский набор Web-мастера. Прочитано 57 страниц из 867.
|
|
| |
masb8ly-GC | Дата: Четверг, 08 Декабря 2011, 19:48 | Сообщение # 13 |
постоянный участник
Сейчас нет на сайте
| Я понимаю, что не для школы и не для вышки, но всеже искать надо более рациональные пути решения данной задачи!
Backend Developer ESIS Client Side Developer Room8Studio Technical Leader Lucid Reality Labs Chief Technology Officer The Intruders Chief Technology Officer RoyalePlay Games
|
|
| |
Naigelgog | Дата: Четверг, 08 Декабря 2011, 21:25 | Сообщение # 14 |
частый гость
Сейчас нет на сайте
| Ну меня сейчас маркеры очень спасают и лично я другого способа перескочить несколько операторов не знаю.)
Никто не ждал, а я вернулся. о.о Отныне зовите меня Ауткастом (жалко, что нельзя поменять логин...).
С.Н. Лукин. Turbo Pascal 7.0 Самоучитель для начинающих. Прочитано. Николай Прохоренок. Html, JavaScript, PHP и MySQL.Джентельменский набор Web-мастера. Прочитано 57 страниц из 867.
|
|
| |
masb8ly-GC | Дата: Четверг, 08 Декабря 2011, 21:26 | Сообщение # 15 |
постоянный участник
Сейчас нет на сайте
| Попробуй все эти операторы описать в цикле!
Backend Developer ESIS Client Side Developer Room8Studio Technical Leader Lucid Reality Labs Chief Technology Officer The Intruders Chief Technology Officer RoyalePlay Games
|
|
| |
Naigelgog | Дата: Пятница, 09 Декабря 2011, 17:08 | Сообщение # 16 |
частый гость
Сейчас нет на сайте
| Всем спасибо за помощь, но я сам разобрался.
Никто не ждал, а я вернулся. о.о Отныне зовите меня Ауткастом (жалко, что нельзя поменять логин...).
С.Н. Лукин. Turbo Pascal 7.0 Самоучитель для начинающих. Прочитано. Николай Прохоренок. Html, JavaScript, PHP и MySQL.Джентельменский набор Web-мастера. Прочитано 57 страниц из 867.
|
|
| |
TimKruz | Дата: Суббота, 10 Декабря 2011, 12:46 | Сообщение # 17 |
старожил
Сейчас нет на сайте
| Quote (Naigelgog) pr2=10 ..40; if vozrast=pr2 then goto m3 else goto m2; Если ты имел в виду проверку, находится ли значение переменной vozrast в определённом диапазоне, то логичнее и проще сделать так: Code if vozrast in [10..40] then //операнд in - проверка на вхождение значения в множество; [10..40] - множество значений. begin //blablabla end else begin //blablabla end; В принципе, можно описать множество как переменную или константу, но, я думаю, тебе это не нужно, т.к. диапазон фиксирован и используется только в одном месте. Кстати, множество можно описать, скажем, так: [10,20,30..40,44,50..60,70,71], при чём вместо чисел могут быть буквы, строки (в одинарных кавычках) и т.п.
На счёт GoTo: эта вещь конечно, нужная, но используется редко, т.к. сильно снижает читабельность кода (постоянно приходится взглядом искать, где же эта метка расположена, ну и структура "сверху - вниз" нарушается) и, как следствие, усложняет поиск ошибок. Советую использовать этот оператор как можно реже; в абсолютном большинстве случаев можно сделать тоже самое с помощью других приёмов - проще и удобнее. Quote (Naigelgog) Прошу прощения, я ещё не разбираюсь в type-ах ^^ Quote (Naigelgog) создана первая большая программа Quote (Naigelgog) я сам разобрался. Ммм, и не поделишься своим собственным решением проблемы? Было бы интересно посмотреть и, возможно, предложить более рациональный вариант.
|
|
| |
Naigelgog | Дата: Суббота, 10 Декабря 2011, 21:56 | Сообщение # 18 |
частый гость
Сейчас нет на сайте
| Уж прошу прощения, но сейчас я пишу с мобильника и дома буду часов в шесть, поэтому код программы привести не могу. Одно скажу, что решил с помощью процедур, ибо понял, что программу я немного неправильно построил. Поэтому в конце и выполнялись оба маркера. Они у меня друг за другом шли. И да, GameMix, твой метод сработал. ^^ Спасибо ему уж.Добавлено (10.12.2011, 21:56) --------------------------------------------- И да, достаточно большую программу на строк сто можно написать и без описания типов.
Никто не ждал, а я вернулся. о.о Отныне зовите меня Ауткастом (жалко, что нельзя поменять логин...).
С.Н. Лукин. Turbo Pascal 7.0 Самоучитель для начинающих. Прочитано. Николай Прохоренок. Html, JavaScript, PHP и MySQL.Джентельменский набор Web-мастера. Прочитано 57 страниц из 867.
|
|
| |
masb8ly-GC | Дата: Воскресенье, 11 Декабря 2011, 13:43 | Сообщение # 19 |
постоянный участник
Сейчас нет на сайте
| Quote (Naigelgog) И да, достаточно большую программу на строк сто можно написать и без описания типов. Ну на счет тайпов это кому как привычнее и удобнее. А вот, что достаточно большая программа умещается в 100 строк для меня сюрприз) Не поделитесь, что делает ваша программа?
Backend Developer ESIS Client Side Developer Room8Studio Technical Leader Lucid Reality Labs Chief Technology Officer The Intruders Chief Technology Officer RoyalePlay Games
|
|
| |
Naigelgog | Дата: Воскресенье, 11 Декабря 2011, 16:47 | Сообщение # 20 |
частый гость
Сейчас нет на сайте
| Что-то вроде мультфильма списанного с учебника XD Ладно, признаю- погорячился. Уберу я эту строчку из подписи.)
Никто не ждал, а я вернулся. о.о Отныне зовите меня Ауткастом (жалко, что нельзя поменять логин...).
С.Н. Лукин. Turbo Pascal 7.0 Самоучитель для начинающих. Прочитано. Николай Прохоренок. Html, JavaScript, PHP и MySQL.Джентельменский набор Web-мастера. Прочитано 57 страниц из 867.
|
|
| |
|