Составьте блок-схему и программу на языке VBA, которая вычисляет сумму положительных чисел из введенной...

Тематика Информатика
Уровень 10 - 11 классы
VBA программирование блок схема сумма положительных чисел последовательность чисел ввод данных алгоритм целые числа конец последовательности написание кода
0

Составьте блок-схему и программу на языке VBA, которая вычисляет сумму положительных чисел из введенной с клавиатуры последовательности целых чисел (длина последовательности не ограничена). Признаком конца последовательности является ввод нуля.

avatar
задан месяц назад

3 Ответа

0

Для решения задачи можно использовать блок-схему и программу на VBA.

Блок-схема

  1. Начало
  2. Инициализация переменной Сумма = 0
  3. Ввод числа Число
  4. Если Число = 0, перейти к шагу 7
  5. Если Число > 0, то Сумма = Сумма + Число
  6. Вернуться к шагу 3
  7. Вывести Сумма
  8. Конец

Программа на VBA

Sub SumPositiveNumbers()
    Dim Sum As Long
    Dim Number As Long
    
    Sum = 0 ' Инициализация суммы
    
    Do
        Number = InputBox("Введите целое число (введите 0 для завершения):")
        
        If Number = 0 Then
            Exit Do ' Завершение цикла при вводе 0
        ElseIf Number > 0 Then
            Sum = Sum + Number ' Добавление положительного числа к сумме
        End If
    Loop
    
    MsgBox "Сумма положительных чисел: " & Sum ' Вывод результата
End Sub

Эта программа запрашивает у пользователя ввод чисел до тех пор, пока не будет введён 0, и суммирует только положительные числа.

avatar
ответил месяц назад
0

Для решения задачи требуется создать алгоритм, реализующий ввод последовательности целых чисел с клавиатуры, вычисление суммы положительных чисел из этой последовательности и остановку ввода при вводе нуля. Рассмотрим данную задачу поэтапно.


1. Описание алгоритма

Алгоритм должен выполнять следующие шаги:

  1. Инициализация переменной для хранения суммы (например, Sum) на нулевое значение.
  2. Организация цикла, который будет работать до тех пор, пока пользователь не введет ноль.
  3. Внутри цикла:
    • Ввод числа с клавиатуры.
    • Проверка, является ли число положительным.
    • Если число положительное, то оно добавляется к переменной Sum.
  4. Завершение цикла при вводе нуля.
  5. Вывод итоговой суммы положительных чисел.

2. Блок-схема

Блок-схема поможет визуализировать процесс выполнения программы. Основные элементы блок-схемы:

  1. Начало.
  2. Инициализация переменной Sum = 0.
  3. Ввод числа.
  4. Проверка условия: если введенное число равно нулю, то программа завершает выполнение.
  5. Если число больше нуля, оно добавляется к Sum.
  6. Повтор цикла.
  7. Вывод суммы положительных чисел.

Графическая блок-схема:

  +--------------------+
  |      Начало        |
  +--------------------+
           ↓
  +--------------------+
  | Sum = 0            |
  +--------------------+
           ↓
  +--------------------+
  | Ввод числа (N)     |
  +--------------------+
           ↓
  +--------------------+
  | N = 0?             |
  +--------------------+
    Да ↓      ↑ Нет
  +--------------------+ 
  | Вывод суммы (Sum)  |
  +--------------------+
           ↓
  +--------------------+
  |      Конец         |
  +--------------------+

3. Программа на языке VBA

В VBA (Visual Basic for Applications) программа может быть реализована следующим образом:

Sub SumPositiveNumbers()
    Dim N As Integer           ' Переменная для ввода числа
    Dim Sum As Integer         ' Переменная для хранения суммы положительных чисел
    
    ' Инициализация суммы
    Sum = 0
    
    ' Бесконечный цикл для ввода чисел
    Do
        ' Ввод числа с клавиатуры
        N = InputBox("Введите целое число (0 для завершения):", "Ввод числа")
        
        ' Признак завершения последовательности
        If N = 0 Then Exit Do
        
        ' Проверка, является ли число положительным
        If N > 0 Then
            Sum = Sum + N
        End If
        
    Loop
    
    ' Вывод суммы положительных чисел
    MsgBox "Сумма положительных чисел: " & Sum, vbInformation, "Результат"
End Sub

4. Пояснение программы

  1. Инициализация переменных:

    • N — переменная для хранения текущего введенного числа.
    • Sum — переменная для хранения суммы положительных чисел (изначально равна 0).
  2. Основной цикл Do.Loop:

    • Цикл работает до тех пор, пока пользователь не введет число 0.
    • Ввод осуществляется с помощью функции InputBox, которая позволяет пользователю ввести значение.
    • При вводе числа проверяется условие: если число равно 0 (If N = 0 Then Exit Do), цикл завершается.
    • Если введенное число больше нуля, то оно добавляется к переменной Sum.
  3. Вывод результата:

    • После завершения цикла (при вводе нуля) с помощью функции MsgBox выводится итоговая сумма всех положительных чисел.

5. Пример выполнения

Предположим, пользователь ввел последовательность чисел: 5, -3, 12, 0.

  • На первом шаге: 5 > 0, сумма становится Sum = 5.
  • На втором шаге: -3 0, сумма становится Sum = 17.
  • На четвертом шаге: пользователь ввел 0, цикл завершился.
  • Итог: программа выводит Сумма положительных чисел: 17.

6. Расширение

Программа также может быть дополнена:

  • Проверкой на ввод нецелых значений (например, строк).
  • Ограничением на ввод отрицательных чисел, если это требуется по условию.
  • Логикой для работы с дробными числами, если это необходимо.

Эта реализация подходит для большинства задач, связанных с вводом последовательностей чисел.

avatar
ответил месяц назад
0

Для решения задачи по вычислению суммы положительных чисел из последовательности целых чисел, введенных с клавиатуры, мы можем использовать подход, который включает в себя создание блок-схемы и написание программы на языке VBA.

Блок-схема

  1. Начало
  2. Инициализация суммы: Установить переменную sum равной 0.
  3. Ввод числа: Запросить у пользователя ввод числа (переменная number).
  4. Проверка числа:
    • Если number равно 0, перейти к шагу 7 (конец).
    • Если number больше 0, добавить number к sum.
  5. Повторный ввод: Вернуться к шагу 3.
  6. Вывод результата: Показать пользователю значение sum.
  7. Конец

Программа на языке VBA

Теперь мы можем написать программу на языке VBA, которая реализует описанный алгоритм:

Sub SumPositiveNumbers()
    Dim number As Integer
    Dim sum As Integer
    sum = 0 ' Инициализация переменной суммы

    Do
        number = InputBox("Введите целое число (введите 0 для завершения):")
        
        ' Проверка на корректность ввода
        If IsNumeric(number) Then
            number = CInt(number) ' Преобразуем ввод в целое число
            
            If number > 0 Then
                sum = sum + number ' Добавляем положительное число к сумме
            End If
        Else
            MsgBox "Пожалуйста, введите корректное целое число."
        End If
        
    Loop While number  0 ' Продолжаем, пока не введен 0

    ' Вывод результата
    MsgBox "Сумма положительных чисел: " & sum
End Sub

Описание программы

  1. Инициализация: Мы создаем переменные number для хранения введенного числа и sum для хранения суммы положительных чисел.
  2. Цикл ввода: Используем цикл Do.Loop, который будет продолжаться до тех пор, пока пользователь не введет 0.
  3. Ввод числа: Вводим число через InputBox, а затем проверяем, является ли оно числом с помощью IsNumeric.
  4. Обработка числа: Если число положительное, добавляем его к sum. Если введено некорректное значение, показываем сообщение об ошибке.
  5. Вывод результата: После завершения цикла, когда введено 0, выводим сумму положительных чисел с помощью MsgBox.

Эта программа позволяет пользователю вводить последовательность чисел до тех пор, пока он не введет 0, при этом автоматически вычисляя сумму всех положительных чисел.

avatar
ответил месяц назад

Ваш ответ

Вопросы по теме

Вычисли сумму чисел в MS Excel. 1. 291; 22; 1048; 72,1 2. 291; 22; 1048; 72,1; 59
8 месяцев назад никиталюбительмохито