powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Програма на бейсике))
19 сообщений из 19, страница 1 из 1
Програма на бейсике))
    #38767358
Fenomenik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!!!
Помогите пожалуйста
Мне нужно написать программу для проверки штрих-кода...
Как рассчитать контрольную сумму
1. Сложить цифры, стоящие на четных местах ШК 9+7+0+7+0+1=24
2. Полученную сумму умножить на три 24*3=72
3. Сложить цифры, стоящие на нечетных местах ШК (кроме самой контрольной цифры) 5+9+2+7+1+0=24
4. Сложить числа, полученные в пунктах 2 и 3 72+24=96
5. Отбросить десятки 96-90=6
6. Из числа 10 вычесть полученное в пункте 5 10-6=4
Только это все на Бейсике))
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38767425
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FenomenikМне нужно написать программунапишите, раз нужно.

А вопрос-то в чем?
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38767571
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

задача уровня "Школьник", человек не хочет делать ДЗ, человек хочет сидеть на печи и жевать калачи, пока мы за него делаем его задания :)
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38767651
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman MejtesShocker.Pro,

задача уровня "Школьник", человек не хочет делать ДЗ, человек хочет сидеть на печи и жевать калачи, пока мы за него делаем его задания :)Спасибо, кэп.
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38767694
Fenomenik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я просто плохо знаю.. VB... Помогите с кодом))
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38767697
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38767724
Fenomenik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я всё понимаю, как сделать что-бы бейсик пересчитувал четные и нечетные числа кроме контрольной))
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38767802
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fenomenik,

Вы хоть какие-то свои попытки выложите сначала. В виде кода. А потом уже можно о помощи говорить. Сейчас это пока что "сделайте за меня", а не помощь.
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38767965
Fenomenik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: 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.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
Private Sub Command1_Click()
 Dim nIter As Long, nSum As Long, nSec
    nSec = 0
    Dim z1 As Integer, z2 As Integer, z3 As Integer
    Dim z4 As Integer, z5 As Integer, z6 As Integer
    Dim z7 As Integer, z8 As Integer, z9 As Integer
    Dim z10 As Integer, z11 As Integer, z12 As Integer
    Dim z13 As Integer
    Dim z123 As Integer, nIterZ As Long
    Dim z4max As Integer, z5max As Integer
    Dim z4min As Integer, z5min As Integer
     For z1 = 0 To 9
        For z2 = 0 To 9
            For z3 = 0 To 9
                 For z4 = 0 To 9
                    For z5 = 0 To 9
                        For z6 = 0 To 9
                            For z7 = 0 To 9
                                For z8 = 0 To 9
                                    For z9 = 0 To 9
                                        For z10 = 0 To 9
                                            For z11 = 0 To 9
                                               For z12 = 0 To 9
                                                  For z13 = 0 To 9
                            nIter = nIter + 1
                            If z1 + z2 + z3 = z4 + z5 + z6 + z7 + z8 + z9 + z10 + z11 + z12 + z13 Then
                                nSum = nSum + 1
                            End If
                        Next
                    Next
                Next
            
            Next
        Next
    Next
        Next
           Next
             Next
                Next
                   Next
                      Next
                         Next
End Sub

...
Рейтинг: 0 / 0
Програма на бейсике))
    #38768065
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
10 13 итераций. Пожалуй, Солнце погаснет позже, чем выполнится этот код, но не надолго. И с условиями задачи он рядом не валялся.
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38768082
Fenomenik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а как пересчитать все 13 чисел которые вводятся в текстбокс??
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38768170
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А где здесь вообще получение хоть чего-то из текстбока?

В текстбокс вводятся не числа, а текст. Нужно последовательно взять каждый символ из текста, превратить в число и сложить в одну переменную сумму четных, а другую нечетных. А потом сложить их, отбросить и т. д. по списку. Цикл получится всего один.
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38768283
Фотография Маслов Андрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fenomenik
Код: 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.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
Private Sub Command1_Click()
 Dim nIter As Long, nSum As Long, nSec
    nSec = 0
    Dim z1 As Integer, z2 As Integer, z3 As Integer
    Dim z4 As Integer, z5 As Integer, z6 As Integer
    Dim z7 As Integer, z8 As Integer, z9 As Integer
    Dim z10 As Integer, z11 As Integer, z12 As Integer
    Dim z13 As Integer
    Dim z123 As Integer, nIterZ As Long
    Dim z4max As Integer, z5max As Integer
    Dim z4min As Integer, z5min As Integer
     For z1 = 0 To 9
        For z2 = 0 To 9
            For z3 = 0 To 9
                 For z4 = 0 To 9
                    For z5 = 0 To 9
                        For z6 = 0 To 9
                            For z7 = 0 To 9
                                For z8 = 0 To 9
                                    For z9 = 0 To 9
                                        For z10 = 0 To 9
                                            For z11 = 0 To 9
                                               For z12 = 0 To 9
                                                  For z13 = 0 To 9
                            nIter = nIter + 1
                            If z1 + z2 + z3 = z4 + z5 + z6 + z7 + z8 + z9 + z10 + z11 + z12 + z13 Then
                                nSum = nSum + 1
                            End If
                        Next
                    Next
                Next
            
            Next
        Next
    Next
        Next
           Next
             Next
                Next
                   Next
                      Next
                         Next
End Sub



Иногда, мне, кажется, что и правду говорит бизнес: "Программисты - это тупые кодеры, обслуживающий персонал и ничего более", но с другйо стороны, если бизнес пишет такой код...
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38768507
Fenomenik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: 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.
Private Sub Command1_Click()
Dim z1 As Single, Y As Integer, z2 As Single, z3 As Single, z4 As Single
Dim z5 As Single, z6 As Single, z7 As Single, z8 As Single, z9 As Single
Dim z10 As Single, z11 As Single, z12 As Single, z13 As Single
Dim X As Double, m As Integer, n As Integer
     z1 = Val(Text1)
     z2 = Val(Text1)
     z3 = Val(Text1)
     z4 = Val(Text1)
     z5 = Val(Text1)
     z6 = Val(Text1)
     z7 = Val(Text1)
     z8 = Val(Text1)
     z9 = Val(Text1)
     z10 = Val(Text1)
     z11 = Val(Text1)
     z12 = Val(Text1)
     z13 = Val(Text1)
     
    
    Y = Val(z2) + Val(z4) + Val(z6) + Val(z8) + Val(z10) + Val(z12)
    X = Y * 3
    m = Val(z1) + Val(z3) + Val(z5) + Val(z7) + Val(z9) + Val(z11)
    n = X + m

    
     Text2.Text = (X)
     
    
End Sub

Ребята посмотрите всеровно не получаеться...
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38768543
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fenomenik,

Код: vbnet
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.
Public Function CheckBar(Bar As String) As Integer
'находит по первым 12 цифрам тринадцатую (контрольную сумму)
'вход - первые 12 символов штрих - кода EAN13
'выход - контрольная сумма
    Dim cod(12)
    Dim c
    Dim s
    Dim i As Integer
    If Len(Trim(Bar)) <> 12 Then
   MsgBox "Штрих код должен содержать 12 цифр", vbCritical
    
    Else
       s = 0
        For i = 1 To 12
       c = Mid(Bar, i, 1)
       s = s + IIf(i Mod 2 = 0, c * 3, c)
        Next
       s = s Mod 10
      If s = 0 Then s = 10
       CheckBar = 10 - s
    End If
End Function
'##################################################################
Private Sub Кнопка0_Click()
'пример вызова в кнопке
'вход - 460709909031 (первые 12 символов штрих-кода чая)
'выход - 6 (контрольная сумма)
MsgBox CheckBar("460709909031")
End Sub
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38768641
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmag,

Хоть и верно по сути, но не по заданному алгоритму, последовательность шагов не соблюдена.
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38768707
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariyпоследовательность шагов не соблюдена.

Доступ к каждому числу строки как:

Cint(Mid(Bar),i,1) где i номер позиции в строке, соответственно пункт 1 будет таким:

Cint(Mid(Bar),2,1) + Cint(Mid(Bar),4,1) + Cint(Mid(Bar),6,1) + Cint(Mid(Bar),8,1) + Cint(Mid(Bar),10,1) + Cint(Mid(Bar),12,1)

а дальше флаг в руки и соблюдайте последовательность шагов....
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38768735
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmagAntonariyпоследовательность шагов не соблюдена.

Доступ к каждому числу строки как:

Cint(Mid(Bar),i,1) где i номер позиции в строке, соответственно пункт 1 будет таким:

Cint(Mid(Bar),2,1) + Cint(Mid(Bar),4,1) + Cint(Mid(Bar),6,1) + Cint(Mid(Bar),8,1) + Cint(Mid(Bar),10,1) + Cint(Mid(Bar),12,1)

а дальше флаг в руки и соблюдайте последовательность шагов....Другое дело. Если ТС предоставит преподу эту соплю, препод ему сразу поверит
...
Рейтинг: 0 / 0
Програма на бейсике))
    #38770062
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Маслов Андрейесли бизнес пишет такой код...Это не он пишет - это я пишу в том примере
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Програма на бейсике))
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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