Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Заблокирован
1

Зачем объявлять переменные?

19.04.2014, 16:57. Просмотров 2102. Ответов 5
Метки нет (Все метки)


В самом деле. Зачем объявлять переменные, если
требуется просто написать решение, сдать преподавателю
И забыть все на свете.
Но вот пример кода, который не знают многие школьники.
Поскольку не любят объявлять переменные.
QBasic/QuickBASIC
1
2
3
4
5
6
7
DEFINT X-Z
CLS
X=1/3
Y=2/3
Z=3.14*3.14
PRINT X;Y;3.14*3.14;Z
END
Будет напечатано следующее:
0 1 9.859601 10
Почему не напечатано так:
.3333333 .6666667 9.859601 9.859601
Здесь мы объявили, что все переменные целые
Вот Бейсик и округлил все результаты по
правилам школьной математики.
А как в других языках??
В Си/Си++ произойдёт то же самое.
А Паскаль на вас обидится и считать не будет
А вообще все так и должно быть.
Объявили переменную целой - Дробь Не получите!!
Успехов всем!
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.04.2014, 16:57
Ответы с готовыми решениями:

<iostream> зачем тогда объявлять <string>?
вот такой пример, в котором локальная переменная скрывает глобальную, но вопрос то не в этом,...

Зачем объявлять функцию, которая и так объявлена в программе?
#include &lt;stion.h&gt; // Зачем тут объявлять функцию, которая и так объявлена в программе? void...

Зачем объявлять прототипы функций? Что даёт прототип?
Зачем объявлять прототипы функций? Можно же описать функцию в начале программы и вызвать в самой...

Как объявлять глобальные переменные в с#?
В общем, хочу написать программу рисования линий из одной точки. То есть по событию Form1_MouseDown...

__________________
Помогаю в написании курсовых работ и дипломов здесь.
5
4794 / 1465 / 392
Регистрация: 25.04.2010
Сообщений: 4,091
Записей в блоге: 1
19.04.2014, 22:40 2
Паскаль и Си более строгие языки, там не декларировать нельзя. Вообще работать "ювелирно"
с DEF-ом не люблю, обычно ставлю к примеру DEFINT A-Z, а дальше DIM-ами уже "высекаю"
как скульптор из камня. Впрочем в каких-то редких ситуациях и малых задачах вполне можно
воспользоваться и "ювелирным" методом.

gehh, тебе нужно писать книгу или цикл статей, желательно более популярным языком. Это
будет определённо полезнее чем все эти темы, потому что они упадут через неделю.
1
569 / 139 / 36
Регистрация: 12.03.2012
Сообщений: 397
20.04.2014, 10:39 3
Если уж и вправду так серьезно стоит вопрос о декларации переменных, то надо начинать с организации хранения данных в машине, с алгоритмов обработки этих данных, с того, что BASIC был задуман как Beginner's All-purpose Symbolic Instruction Code (Всецелевой язык программирования для начинающих). Отсюда, кстати, и "всеядность" типов переменных, что приведено в примере, но эта "всеядность" тащит за собой килограммы встроенных библиотек, а арифметика QB вообще целиком заточена под операции с действительными числами.
Последнее, кстати, дает, на первый взгляд неожиданный результат, когда арифметические операции с действительными числами выполняются быстрее, чем с целыми.
Здесь есть примеры заморочки с декларацией (извините, если он не совсем удачно): Не надо наступать на мои грабли или типы чисел
Как обмануть 15-й бит?
1
Модератор
Эксперт Python
28429 / 15318 / 3021
Регистрация: 12.02.2012
Сообщений: 25,090
Записей в блоге: 4
20.04.2014, 11:23 4
Лучший ответ Сообщение было отмечено gehh как решение

Решение

Лично я описываю только массивы и логические переменные. А для всех прочих использую суффиксы:

A% - тип int
A& - тип long
A$ - тип String
A# - тип Double
A! - тип Single

Код лаконичный и нет проблем с неявным преобразованием. А в Бэйсике "от веку" переменные при создании инициализируются нулем (пустой строкой) автоматически. Так что и с этим проблем нет.
2
Заблокирован
20.04.2014, 15:20  [ТС] 5
A% - тип int
A& - тип long
A$ - тип String
A# - тип Double
A! - тип Single
Это палка о двух концах. Лучше найти золотую середину.
Допустим в программе много переменных типа long, то
напишите DEFLNG ... А остальное на ваше усмотрение.
Однако если у вас такой стиль, то ради бога не меняйте его!!
Скажите мне каков ваш стиль и я скажу какой вы программист!!
Вы хороший программист (от бога!!)
И это лучший ответ!
Удачи вам!
1
Модератор
Эксперт Python
28429 / 15318 / 3021
Регистрация: 12.02.2012
Сообщений: 25,090
Записей в блоге: 4
20.04.2014, 15:22 6
Спасибо, но, боюсь, Вы меня несколько переоценили.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.04.2014, 15:22

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь или здесь.

Как правильно объявлять переменные?
Здравствуйте, перед тем как писать что то наподобие &quot;google в помощь&quot; скажу что на разных сайтах...

Как лучше объявлять переменные
Написал такой код, который сначала получает несколько(много) текстовых файлов: DirectoryInfo...

Как объявлять глобальные переменные?
Нужно создать переменную &quot;Х&quot; задать ей тип, и потом изменять значение из любой формы. Чтобы был...

Где лучше эти переменные объявлять?
Посмотрите пожалуйста на следующий код (код сишный, но компилировался как C++, так как в чистом Си...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.