Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Сумматоры






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

 

Если вы поняли идею счетчика, то понять идею сумматора вам будет нетрудно. Посмотрим, как будет работать следующий фрагмент:

s=0 'Обнуляем сумматор. Это не менее важно, чем обнулить счетчик

m: a = InputBox(" Введите очередное число")

s=s+a 'Увеличиваем сумматор

Debug.Print " Сумма="; s

GoTo m

 

В ячейке s накапливается сумма вводимых чисел a, поэтому назовем эту ячейку сумматором. Отличие сумматора от счетчика в том, что счетчик увеличивается на 1 оператором c=c+1, а сумматор - на суммируемое число оператором s=s+a.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму.

Программа:

Private Sub Command2_Click()

N = InputBox(" Сколько чисел будем складывать? ")

s = 0

For i = 1 To N

a = InputBox(" Введите очередное число")

s = s + a

Next i

Debug.Print " Сумма равна"; s

End Sub

Задание 53: Пусть N=2, a=5 и 3. Тогда по этой программе Visual Basic напечатает 8. Что он напечатает, если:

1) Вместо s=0 написать s=10.

2) Вместо s=s+a написать s=s+a+1.

3) Строки Next и Debug.Print поменять местами.

4) Строки s=0 и For поменять местами.

5) Строки For и InputBox поменять местами.

6) Строки s=s+a и Next поменять местами.

7) Вместо For i=1 To N написать For i=2 To N.

Задания 54-56: Написать программы для следующих задач:

54) Во дворце 40 залов. Известны длина и ширина каждого зала. Вычислить площадь пола всего дворца.

55) Вычислить средний балл учеников вашего класса по физике.

56) Вычислить произведение N произвольных чисел. Подсказка: Несмотря на то, что произведение - не сумма, эта программа будет отличаться от программы суммирования всего двумя существенными символами (какими?), а структура обеих программ совершенно одинакова.

Вложение циклов в разветвления и наоборот

Реальная процедура на Visual Basic может представлять собой сложную мозаику из циклических и разветвляющихся частей, вложенных друг в друга. Мы уже видели в 6.3, как в оператор цикла были вложены операторы ветвления. В свою очередь в них могут быть вложены операторы цикла, и так до бесконечности.

Для тренировки определите, что напечатает следующий фрагмент:

Private Sub Command1_Click()

For i = 1 To 5

a = 9

If i * i = a Then

For k = 5 To 8

Debug.Print k;

Next k

Else

Debug.Print 1997

End If

Next i

End Sub

Здесь внутрь For i = 1 To 5 вложен If i * i = a, а внутрь него вложен For k = 5 To 8.

Ответ:

5 6 7 8 1997






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.