Перейти к содержимому

Фото
- - - - -

Visual Basic


  • Вы не можете создать новую тему
  • Please log in to reply
13 ответов в этой теме

#1 MaXXX

MaXXX
  • Пользователь
  • 408 сообщений

Отправлено 29 марта 2006 - 11:26

Нужно написать след. программки.

Задача 1
Напишите программу, с помощью которой моделируется бросание игральной кости двумя игроками и определяется выигравший игрок. Игральная кость – кубик, грани которого пронумерованы от 1 до 6.
Под моделированием подразумевается воспроизведение на компьютере получения случайного результата такого бросания – равновероятного выпадения одного из шести чисел.
Кроме того, программа должна нарисовать в графическом окне экранной формы ту грань кубика, которая соответствует выпавшему числу.


Задача 2
Индийский раджа, которому преподнесли в подарок шахматную игру, захотел наградить изобретателя и разрешил ему выбрать награду самому. «Дай мне, - сказал мудрец, - только несколько пшеничных зерен, причем ровно столько, сколько поместится на шахматной доске, если ты на первую клетку положишь одно зернышко, на вторую клетку два зернышка и так далее: на каждую клетку вдвое больше, чем на предыдущую».
Сколько тонн зерна требуется, чтобы выполнить эту просьбу?
Информация: шахматная доска имеет 64 поля; тонна пшеницы содержит 4 000 000 зерен.
Указание: выполнить с использованием цикла For … Next


Задача 3
Выполнить задачу 2 с использованием цикла Do While … Loop


Задача 4
Написать программу нахождения минимального натурального числа n, для которого выполняется неравенство:
1 + 3 + 5 + ...+ (2n – 1) > 36
Указание: выполнить с использованием цикла Do While … Loop


Задача 5
Создайте массив в памяти, содержащий первые десять элементов последовательности Фибоначчи, и выведите их в экранную форму.
Последовательность Фибоначчи имеет такой вид: 0, 1, 1, 2, 3, 5, 8, ... Первое число равно 0, второе – 1, каждое последующее число равно сумме двух предыдущих.

Задача 6
Введите два массива, элементы которого являются символьной информацией и отсортированных по возрастанию. Соедините их в один массив, выбирая каждый раз тот элемент, который идет раньше (по сортировке). Результат выведите на экран.
Указание: используйте не более 10 элементов в каждом массиве, напр., ас бт бш гр гст.


Задача 7
Ввести в текстовое поле через пробел пять фамилий. Создать из них массив фамилий с помощью функции Split. Используя этот массив, создать ComboBox, содержащий список фамилий. Выбранная из списка фамилия должна отображаться в текстовом поле.


Оплата пивом, либо договорным количеством денег.
  • 0
"The rush of battle is often a potent and lethal addiction, for war is a drug"
Chris Hedges

#2 Warvick

Warvick
  • Пользователь
  • 411 сообщений
  • Откуда:Tallinn

Отправлено 29 марта 2006 - 12:04

гы
ну знаете ли...
эти задачки для 1го класса
:)

Сообщение изменено: Warvick (29 марта 2006 - 12:05 )

  • 0
Да, я такой!

#3 MaXXX

MaXXX
  • Пользователь
  • 408 сообщений

Отправлено 29 марта 2006 - 12:12

1) надо не мне
2) разница, для какого класса?
3) у людей просто напросто нет время на это дело.
  • 0
"The rush of battle is often a potent and lethal addiction, for war is a drug"
Chris Hedges

#4 сантехник

сантехник
  • Пользователь
  • 477 сообщений
  • Откуда:Sillamae

Отправлено 29 марта 2006 - 15:04

MaXXX, на VisualBasic или VisualBaisc for Aplication for MS Excel?
  • 0

#5 MaXXX

MaXXX
  • Пользователь
  • 408 сообщений

Отправлено 29 марта 2006 - 15:40

пацанёнок,
VisualBasic
  • 0
"The rush of battle is often a potent and lethal addiction, for war is a drug"
Chris Hedges

#6 -quik-

-quik-
  • Постоялец
  • 651 сообщений

Отправлено 29 марта 2006 - 21:11

1) надо не мне
2) разница, для какого класса?
3) у людей просто напросто нет время на это дело.


а другие люди с форума наверна совсем не заняты и им большне нечего делать как писать другим программы?
  • 0

#7 Cryptoboy

Cryptoboy
  • Пользователь
  • 280 сообщений

Отправлено 29 марта 2006 - 22:09

Задача 4
Написать программу нахождения минимального натурального числа n, для которого выполняется неравенство:
1 + 3 + 5 + ...+ (2n – 1) > 36
Указание: выполнить с использованием цикла Do While … Loop

Зачем с циклом?.. Очевидно н = 7 , т.к сумма слева равна n^2
  • 0

#8 Zero

Zero

    TRUST NO ONE

  • Постоялец
  • 10 668 сообщений
  • Откуда:Таллин

Отправлено 29 марта 2006 - 23:28

MaXXX, первая обычный RND(1)*6 :)
Вторая: цикл от одного до н, каждый раз вычисляешь 2 в нной степени, суммируешь потом, затем делишь. Переменная дабл...
А вообще, 2 в нной это 1 бит сдвинутый на н позиций влево ;)
То есть надо 62 единицы разделить на 10^6. Ну да, цикл как раз либо для перевода в дес. систему, либо для подсчета числа сразу, без перевода.
Это алгоритмы. А код писать - ну уж извините, думаю, справитесь сами :) Легко ведь.

6 задача - всю символьную информацию перевести в числа. Т.е. а например 1 б-2, это легко. Выходит что в таком массиве числа, сравнить которые (больше-меньше) легко. Можно и не переводить, ибо символы ли в переменной или числа зависит лишь от того, как мы их интерпретируем. Хотя не помню, как это на ВБ сделать простыми средствами. А вот ASC поможет ;)
  • 0
Моя Родина - СССР! Пролетарии всех стран, соединяйтесь!
-----------------------------------------------------------------------
Ясность - одна из форм полного тумана. Форумчане, давайте жить дружно!

#9 gmail

gmail
  • Пользователь
  • 211 сообщений

Отправлено 02 апреля 2006 - 00:57

2я задача:

( 2^63+1 ) / 4000000 (кстати дофига получается:))
  • 0

#10 Zero

Zero

    TRUST NO ONE

  • Постоялец
  • 10 668 сообщений
  • Откуда:Таллин

Отправлено 03 апреля 2006 - 14:07

gmail, только придется переменную с плавающей запятой использовать, контроллируя перенос. Ибо 2 в 63 это больше чем long в VB. Ну, или пол-числа вычислить, начать делить, потом опять.
  • 0
Моя Родина - СССР! Пролетарии всех стран, соединяйтесь!
-----------------------------------------------------------------------
Ясность - одна из форм полного тумана. Форумчане, давайте жить дружно!

#11 MaXXX

MaXXX
  • Пользователь
  • 408 сообщений

Отправлено 03 апреля 2006 - 16:29

-quik-,

за это им предлагают денюжку. кстати тему лучше перенести в раздел предлагаю работу
  • 0
"The rush of battle is often a potent and lethal addiction, for war is a drug"
Chris Hedges

#12 MaXXX

MaXXX
  • Пользователь
  • 408 сообщений

Отправлено 12 апреля 2006 - 11:49

хм...чего то не могу догнать 6 задачу!

Сообщение изменено: MaXXX (12 апреля 2006 - 11:49 )

  • 0
"The rush of battle is often a potent and lethal addiction, for war is a drug"
Chris Hedges

#13 MaXXX

MaXXX
  • Пользователь
  • 408 сообщений

Отправлено 12 апреля 2006 - 12:25

так. есть два массива:
mass1 и mass2

как их вывести обоих в один текстбокс?

Text3.Text = ?
  • 0
"The rush of battle is often a potent and lethal addiction, for war is a drug"
Chris Hedges

#14 Zero

Zero

    TRUST NO ONE

  • Постоялец
  • 10 668 сообщений
  • Откуда:Таллин

Отправлено 14 апреля 2006 - 10:06

MaXXX, построчно, один за одним, со скролингом?
если массивы одинаковой длины то так

dim a$,b$
a$=""
b$=""
dim i as long
for i=0 to size_of_massive
a$=a$+massive1(i)+vbcrlf
b$=b$+massive2(i)+vbcrlf
next i
text3.text=a$+b$

если разной, то
text3.text=""
dim i as long
for i=0 to size_of_massive1
text3.text=text3.text+massive1(i)+vbcrlf
next i
for i=0 to size_of_massive2
text3.text=text3.text+massive2(i)+vbcrlf
next i


6 задача - всю символьную информацию перевести в числа. Т.е. а например a-1 б-2, это легко. Выходит что в таком массиве числа, сравнить которые (больше-меньше) легко. Можно и не переводить, ибо символы ли в переменной или числа зависит лишь от того, как мы их интерпретируем. Хотя не помню, как это на ВБ сделать простыми средствами. А вот ASC поможет

Если массивы длинные, попробуй хотя бы пузырьком их отсортировать.
Кстати, зачем тебе эти задачи, хто задал?

Сообщение изменено: Zero (14 апреля 2006 - 10:07 )

  • 0
Моя Родина - СССР! Пролетарии всех стран, соединяйтесь!
-----------------------------------------------------------------------
Ясность - одна из форм полного тумана. Форумчане, давайте жить дружно!