👍 0 👎 |
Visual BASICПожалуйста, помогите решить задачу ((
Задание: Задание для контрольной работы содержит задачу. В задаче необходимо составить программу на алгоритмическом языке Visual BASIC. Причем, программа должны быть записаны в двух вариантах: в первом варианте необходимо использовать оператор условного перехода IF ...Go To, а во втором — оператор цикла For... To... Step, Next. Для облегчения решения задачи по ней даны Краткие методические указания. Страницы Работы должны быть пронумерованы и на каждой из них оставлены поля для замечаний и предложений рецензента. В конце работы ставится дата выполнения. сама задача на фото. http://content.foto.mail.ru/bk/dred-2/_answers/i-5.jpg
обучение BASIC изучение языков программирования программирование обучение
Андрей Семендаров
|
👍 0 👎 |
В чём Ваша сложность?
Объявите переменные и инициализируйте их значения: СКоб=12000, З=15000, КР=6000 В случае с IF, добавьте к КР 100 и рассчитайте коэффициент, после чего проверяйте условие, что КР не больше 7000, если это так — оператором GoTo переходите на строку, где вы добавляете 100. В цикле For...To — почти то же самое, в теле цикла добавляете 100 к КР и рассчитываете ваш К. |
👍 0 👎 |
Просто дело в том, что я не изучал этот язык программирования, я изучал только алгоритмический язык C++ и КуМИР((
Вы бы не могли проварить, правильно ли я решил данную задачу, я, вроде, прочитал дополнительную литературу, думаю, что все верно. Вы бы могли это подтвердить? _______________________________________ 1 вариант: Dim K As Double, CK As Integer, KP As Integer, Z As Integer Private Sub Form_Load() CK = 12000 Z = 18500 For KP = 6000 To 7000 Step 100 K = CK + KP K = K / Z Print K Next KP End Sub __________________________________________________________ 2 вариант: Dim K As Double, CK As Integer, KP As Integer, Z As Integer Private Sub Form_Load() KP = 6000 jumplabel1: CK = 12000 Z = 18500 K = CK + KP K = K / Z Print K Do KP = KP + 1 If KP Mod 100 = 0 Then GoTo jumplabel1 If KP > 7000 Then GoTo jumplabel2 Loop jumplabel2: End Sub |
👍 0 👎 |
2 вариант
Будет проще, если к переменной KP прибавлять не по единичке, а сразу по 100. Тогда не нужен будет цикл Do-Loop и не нужна будет метка jumplabel2. |
👍 0 👎 |
Разве оператор DIM не должен стоять внутри процедуры?
|
👍 0 👎 |
Да Черт его знает, я же говорю, что не изучал этот язык программирования и все языковые нормы мне не все известны(
меня подруга просила помочь ей, а я согласился) ну ладно, что есть, то есть) я уже все отослал) |
👍 0 👎 |
В первом варианте, вроде, нормально.
Во втором — непонятное что-то... Вы зачем-то используете две метки (вторая не нужна, а первая стоит не там где нужно) и зачем-то используете loop (причём, условие выхода, которое должно быть по синтаксису или в while, или в untill, отсутствует). Всё гораздо проще, чем вы это себе представили: метка нужна только перед добавлением 100 к KP (по единице добавлять и проверять на кратность 100 — не надо, это жутко неэффективно). После добавления идёт расчёт К, а затем, если KP <= 7000 — делается GoTO. Loop здесь тоже никаким боком — вы уже пытаетесь имитировать цикл при помощи метки, зачем же ещё и loop? Напишите 2 вариант заново |
👍 0 👎 |
спасибо)
|
👍 0 👎 |
Программирование на Си: как отсортировать двунаправленный список?
|
👍 +1 👎 |
С++
|
👍 0 👎 |
Программа
|
👍 −1 👎 |
Pascal
|