Прошу помощи с Basic-ом
|
|
semerikov | Дата: Пятница, 21.12.2012, 22:32 | Сообщение # 1 |
Майор
Группа: Участники
Сообщений: 1020
Репутация: 37
Статус: Оффлайн
| Сразу хочу извинится , что вопрос,а точнее просьба, не относятся к моделизму,но все же прошу у вас помощи.Кто "шарит" в программировании в Basic-е , нужна ваша помощь,даже очень... Необходимо следующее: Составить программы описывающие алгоритмы решения задач: 1.Нахождения объема цилиндра.Радиус- R, высота- h. 2.Нахождение площади кольца образованного двумя окружностями с радиусами R1 и R2. 3.Нахождение наименьшего,наибольшего и занимающего среднее значение из 3 чисел. P.s.Заранее спасибо!!!
С уважением, Даниил.
|
|
| |
Виталий | Дата: Суббота, 22.12.2012, 00:41 | Сообщение # 2 |
Полковник
Группа: Мастера
Сообщений: 2115
Репутация: 150
Статус: Оффлайн
| Это скорее подсказка, так как написано на коленке. Кроме того, хорошо бы указать, какая версия Basic. Visual, Visual .Net, а может Qbasic?
Первая задача
Dim R As Long Dim h As Long
R = Val(InputBox("Радиус")) h = Val(InputBox("Высота"))
Dim V As Long
V = 3.14 * R ^ 2 * h
MsgBox (V)
вторая задача
Dim R1 As Long Dim R2 As Long
Dim S As Long
S = 0 R1 = Val(InputBox("Радиус первой окружности")) R2 = Val(InputBox("Радиус второй окружности"))
If R1 <> R2 Then S = 3.14 * R1 ^ 2 - 3.14 * R2 ^ 2
If S < 0 Then S = 3.14 * R2 ^ 2 - 3.14 * R1 ^ 2
MsgBox (S)
Третья задача
Dim a(2) As Long Dim i As Integer
For i = 0 To 2
a(i) = Val(InputBox("Число " & i + 1))
Next
Dim Max As Long Dim Min As Long Dim Cen As Long
Max = a(0) Min = a(0) Cen = a(0)
For i = 1 To 2 If a(i) > Max Then Max = a(i) If a(i) < Min Then Min = a(i) Next
For i = 0 To 2
If a(i) <> Max And a(i) <> Min Then Cen = a(i)
Next
MsgBox (Max) MsgBox (Min) MsgBox (Cen)
А вообще третья задача не корректна. Как быть если числа равны или два из них равны? Среднее число вычислить невозможно или оно будет не верным. Числа при вводе должны быть разными и это должно проверяться программой. Надо писать такую функцию?
Сообщение отредактировал Виталий - Суббота, 22.12.2012, 10:31 |
|
| |
semerikov | Дата: Суббота, 22.12.2012, 11:53 | Сообщение # 3 |
Майор
Группа: Участники
Сообщений: 1020
Репутация: 37
Статус: Оффлайн
| Виталий,огромное спасибо!!!Если бы вы знали,как сильно вы мне помогли!!!Просто у меня за полугодие все пятерки выходят,кроме информатики,а на этой теме я болел и чтобы исправить оценку, он (учитель) специально задал мне эти задачи.А про третью задачу подразумевалось что все три числа будут разными.
С уважением, Даниил.
|
|
| |
VS | Дата: Суббота, 22.12.2012, 11:59 | Сообщение # 4 |
Сержант
Группа: Пользователи
Сообщений: 239
Репутация: 4
Статус: Оффлайн
| Даниил, а учитель не моделист?
|
|
| |
semerikov | Дата: Суббота, 22.12.2012, 12:28 | Сообщение # 5 |
Майор
Группа: Участники
Сообщений: 1020
Репутация: 37
Статус: Оффлайн
| Цитата (VS) Даниил, а учитель не моделист? Не,он вообще вредный человек...
С уважением, Даниил.
|
|
| |
VS | Дата: Суббота, 22.12.2012, 14:11 | Сообщение # 6 |
Сержант
Группа: Пользователи
Сообщений: 239
Репутация: 4
Статус: Оффлайн
| А то зайдет на сайт, посмотрит как ты задачи решаешь
|
|
| |
semerikov | Дата: Суббота, 22.12.2012, 16:19 | Сообщение # 7 |
Майор
Группа: Участники
Сообщений: 1020
Репутация: 37
Статус: Оффлайн
| Он нам сам сказал: "делайте что хотите: ищите студентов,репетиторов,учителей,знакомых,но что бы задачи были решены..."
С уважением, Даниил.
|
|
| |
Виталий | Дата: Суббота, 22.12.2012, 16:29 | Сообщение # 8 |
Полковник
Группа: Мастера
Сообщений: 2115
Репутация: 150
Статус: Оффлайн
| Цитата (semerikov) Виталий,огромное спасибо!!!Если бы вы знали,как сильно вы мне помогли!!! Не за что. Главное, чтобы ты сам в этих примерах разобрался.
Цитата (semerikov) подразумевалось что все три числа будут разными. Тогда нужно, чтобы программа это проверяла. Сравнивала введенное число с теми, что уже есть в массиве.
|
|
| |
semerikov | Дата: Суббота, 22.12.2012, 17:35 | Сообщение # 9 |
Майор
Группа: Участники
Сообщений: 1020
Репутация: 37
Статус: Оффлайн
| Цитата (Виталий) Не за что. Главное, чтобы ты сам в этих примерах разобрался. Да,вроде стал маленько понимать.А эти алгоритмы же только для Basic Visual ?
С уважением, Даниил.
|
|
| |
Виталий | Дата: Суббота, 22.12.2012, 18:43 | Сообщение # 10 |
Полковник
Группа: Мастера
Сообщений: 2115
Репутация: 150
Статус: Оффлайн
| Нет. Сами решения универсальны, меняется только запись. Можно вообще этот код загнать в макрос MS Word и посмотреть, как работает.
|
|
| |
semerikov | Дата: Суббота, 22.12.2012, 20:35 | Сообщение # 11 |
Майор
Группа: Участники
Сообщений: 1020
Репутация: 37
Статус: Оффлайн
| В первой задаче в третьей строчке находит ошибку и пишет : String required for function on current line В чем может быть ошибка?Добавлено (22.12.2012, 20:35) --------------------------------------------- А во второй задаче с 5 строчкой тоже самое
С уважением, Даниил.
|
|
| |
Виталий | Дата: Суббота, 22.12.2012, 20:51 | Сообщение # 12 |
Полковник
Группа: Мастера
Сообщений: 2115
Репутация: 150
Статус: Оффлайн
| Функция Inputbox не поддерживается. Можно заменить простым присваиванием значения типа:
R = 10 h = 24
Также видимо не поддерживается Msgbox. Это просто вывод вычисленного значения. Можно заменить чем-то типа Print S
Все зависит от версии Basic. Я не зря об этом говорил. Мой текст программы будет работать в Visual Basic for Aplication. Тебе нужно адаптировать текст под свой Basic.
|
|
| |
semerikov | Дата: Суббота, 22.12.2012, 21:11 | Сообщение # 13 |
Майор
Группа: Участники
Сообщений: 1020
Репутация: 37
Статус: Оффлайн
| А,ясно,спасибо!!!У меня просто не "вижл",а у информатика на компе все равно "вижл" стоит
С уважением, Даниил.
|
|
| |