Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ВАЖНО: Найти ошибку в задаче VB / 22 сообщений из 22, страница 1 из 1
17.05.2010, 16:46
    #36632534
lizia
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
Помогите пожалуйста найти ошибку!!!!
1/Нужно вычислить среднее арифметическое S элементов массива b1, b2...,b8, удовлетворяющих условию 0<=bi<=1. Если таких элементов нет - то считать S=0. При решении надо не только накапливать сумму элементов, удовлетворяющих заданному условию, но и подсчитывать их количество по формуле n=n+1.

Private Sub Form_Load()
Dim s(1 To 8) As Single, b As Single, n As Integer
Show
For i = 1 To 8
s(i) = Rnd * 10
If s(i) >= 0 And s(i) <= 1 Then b = b + s(i): n = n + 1
Print s(i)
Next
If Not n = 0 Then b = b / n
MsgBox b
End Sub

2/ Даны результаты переписи населения, которые хранятся в памяти ЭВМ. Напечатать фамилии и имена и подсчитать общее число жителей, родившихся после 1990 года. Ввод списка населения осуществить в линейный массив в одной подпрограмме, а выборку из списка – в другой.

Модератор: Тема перенесена из форума "Вакансии".
...
Рейтинг: 0 / 0
17.05.2010, 16:54
    #36632553
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
как-то все покоцалось. Перепост.

liziaПомогите пожалуйста найти ошибку!!!!
1/Нужно вычислить среднее арифметическое S элементов массива b1, b2...,b8, удовлетворяющих условию 0<=bi<=1. Если таких элементов нет - то считать S=0. При решении надо не только накапливать сумму элементов, удовлетворяющих заданному условию, но и подсчитывать их количество по формуле n=n+1.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Private Sub Form_Load()
Dim s( 1  To  8 ) As Single, b As Single, n As Integer
Show
For i =  1  To  8 
 s(i) = Rnd *  10 
    If s(i) >=  0  And s(i) <=  1  Then b = b + s(i): n = n +  1 
    Print s(i)
Next
If Not n =  0  Then b = b / n
MsgBox b
End Sub

2/ Даны результаты переписи населения, которые хранятся в памяти ЭВМ. Напечатать фамилии и имена и подсчитать общее число жителей, родившихся после 1990 года. Ввод списка населения осуществить в линейный массив в одной подпрограмме, а выборку из списка – в другой.
...
Рейтинг: 0 / 0
17.05.2010, 17:00
    #36632567
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
По первому пункту. А в чем ошибка? На первый взгляд все правильно....

По второму пункту. Вы хотите, чтобы мы за вас все сделали?
...
Рейтинг: 0 / 0
17.05.2010, 19:18
    #36632839
lizia
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
в первой задаче он просто на форме ничего не выводит, а должен выводить массив) А по второй я прошу вас помочь решить!у меня вообще ничего не получаеся!ПОЖАЛУЙСТА))
...
Рейтинг: 0 / 0
17.05.2010, 19:21
    #36632851
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
liziaв первой задаче он просто на форме ничего не выводит, а должен выводить массив)

Все выводит. Просто не надо это пихать в Form_Load. А то он выводит, а потом стирает. Сделайте кнопку на форме и все в нее положите.
...
Рейтинг: 0 / 0
17.05.2010, 19:22
    #36632853
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
liziaДаны результаты переписи населения

Ну и где, кому и как они даны?
...
Рейтинг: 0 / 0
17.05.2010, 19:36
    #36632879
lizia
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
Одну командную кнопку что ли?)
...
Рейтинг: 0 / 0
17.05.2010, 19:42
    #36632887
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
liziaОдну командную кнопку что ли?)

Можно десять. Смысл в том, чтобы вызывать вашу программу тогда, когда форма уже появилась на экране. Во время работы Form_Load этого еще не произошло.


Ок, список есть. Что именно у вас не получается?
...
Рейтинг: 0 / 0
17.05.2010, 20:00
    #36632905
lizia
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
Поняла!Спасибо) у меня не получаеся ни линейный массив, ни выборка из списка!я вообще не понимаю как делать..((
...
Рейтинг: 0 / 0
17.05.2010, 20:02
    #36632907
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
liziaя вообще не понимаю как делать..((

Берете карандаш и бумажку и рисуете алгоритм простыми человеческими словами.

Ну или хотя бы подробно последовательность действий, позволяющую добиться нужного результата.

А потом будем переводить на VBA
...
Рейтинг: 0 / 0
18.05.2010, 18:40
    #36634762
lizia
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
2/ Даны результаты переписи населения, которые хранятся в памяти ЭВМ. Напечатать фамилии и имена и подсчитать общее число жителей, родившихся после 1990 года. Ввод списка населения осуществить в линейный массив в одной подпрограмме, а выборку из списка – в другой.
Вот что получилось. В ЧЕМ ОШИБКА?ПОМОГИТЕ ПОЖАЛУЙСТА!

Private Sub Command1_Click()
perepis
End Sub
Private Sub perepis()
Call Vvod
Call Vibor
End Sub
Private Sub Vibor()
For i = 1 To 5
If a(i).fam = god > 1990 Then

Picture2.Print a(i).fam; a(i).god
End If
Next i
End Sub

Private Sub Vvod()
fam As String
god As Integer
Dim fam(1 To 5) As String
Dim god(1 To 5) As Integer
Show
Dim a(1 To 5) As Integer
Dim fam As String, god As Integer
For i = 1 To 5
a(i).fam = InputBox("Èâàíîâ Èâàí", "Ïåòðîâ Ïåòÿ", "Ñèäîðîâà Ëàðèñà", "Ñèíèöûí Ñåíÿ", "Ïàê Êàòÿ")
a(i).god = InputBox("1990", "1991", "1992", "1993", "1989")
Picture1.Print a(i).fam; a(i).god;
Picture1.Print
Next i
End Sub
...
Рейтинг: 0 / 0
18.05.2010, 18:43
    #36634769
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
Используйте тэги для оформления кода.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
Private Sub Command1_Click()
perepis
End Sub
Private Sub perepis()
Call Vvod
Call Vibor
End Sub
Private Sub Vibor()
For i =  1  To  5 
If a(i).fam = god >  1990  Then

Picture2.Print a(i).fam; a(i).god
End If
Next i
End Sub

Private Sub Vvod()
fam As String
god As Integer
Dim fam( 1  To  5 ) As String
Dim god( 1  To  5 ) As Integer
Show
Dim a( 1  To  5 ) As Integer
Dim fam As String, god As Integer
For i =  1  To  5 
a(i).fam = InputBox("Èâàíîâ Èâàí", "Ïåòðîâ Ïåòÿ", "Ñèäîðîâà Ëàðèñà", "Ñèíèöûí Ñåíÿ", "Ïàê Êàòÿ")
a(i).god = InputBox("1990", "1991", "1992", "1993", "1989")
Picture1.Print a(i).fam; a(i).god;
Picture1.Print
Next i
End Sub
...
Рейтинг: 0 / 0
18.05.2010, 18:46
    #36634780
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
Вы понимаете, что тут написано?
Код: plaintext
a(i).god = InputBox("1990", "1991", "1992", "1993", "1989")
Откуда вы взяли такой синтаксис?
...
Рейтинг: 0 / 0
18.05.2010, 18:49
    #36634788
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
Код: plaintext
1.
2.
fam As String
Dim fam( 1  To  5 ) As String
Dim fam As String

А этими тремя строками вы что хотели сказать?
...
Рейтинг: 0 / 0
18.05.2010, 18:51
    #36634792
lizia
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
что такое тэги??
...
Рейтинг: 0 / 0
18.05.2010, 18:53
    #36634799
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
liziaчто такое тэги??
Нажмите "Цитировать" на моем сообщении и вы увидите, как оно оформлено. Прочтите правила - там это написано.
...
Рейтинг: 0 / 0
18.05.2010, 18:58
    #36634821
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
Код: plaintext
1.
2.
3.
4.
5.
6.
Private Sub Command1_Click()
perepis
End Sub
Private Sub perepis()
Call Vvod
Call Vibor
End Sub

Это единственный правильный код. Все остальное - каша и бред и игнорирование синтаксиса. Что вы хотели сказать например конструкцией a(i).fam? В общем, как я уже говорил - надо написать сначала алгоритм
...
Рейтинг: 0 / 0
18.05.2010, 19:06
    #36634836
lizia
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
вы нашли в чем у меня ошибка??
...
Рейтинг: 0 / 0
18.05.2010, 19:06
    #36634839
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
liziaвы нашли в чем у меня ошибка??

См. выше. Я нашел, в чем у вас нет ошибок.
...
Рейтинг: 0 / 0
18.05.2010, 19:12
    #36634844
lizia
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
да это должно быть правильно!нас так учат! Кашу эту писать. Условие правильно написано If a(i).fam = god > 1990 Then. как правильно скажите уже!!!
...
Рейтинг: 0 / 0
18.05.2010, 19:13
    #36634845
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
1) Используйте Option Explicit
2) Запускайте программу с помощью Ctrl+F5 (вместо F5) или из меню Start With Full Compile вместо Start. При возникновении ошибки жмите кнопку Debug.

Выполнив эти два пункта разберитесь с теми ошибками, которые вам выдаст сам VB.
...
Рейтинг: 0 / 0
18.05.2010, 19:15
    #36634847
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ВАЖНО: Найти ошибку в задаче VB
liziaда это должно быть правильно!нас так учат! Кашу эту писать. Условие правильно написано If a(i).fam = god > 1990 Then. как правильно скажите уже!!!

Не верю!
Фото методички или страницы учебника в качестве доказательства плиз.

Не вас так учат, а вы так учитесь. Лекции посещать надо хотя бы иногда.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ВАЖНО: Найти ошибку в задаче VB / 22 сообщений из 22, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]