Персональная страничка
| ||
Предыдущий раздел:
Следующий раздел:
Данный алгоритмический прием используется, когда надо просуммировать большое количество чисел. Для этого переменной, в которую будет записываться сумма, в начале присваивается нулевое значение, затем делается цикл, где на каждом шаге к этой переменной добавляется очередное число.
Пример 4: Просуммировать все целые числа от 1 до 100.
s := 0; {Обнуление переменной} for i:=1 to 100 do s:=s+i; {Прибавление очередного элемента суммы}
Очень важная, фундаментальная идея, использованная в данном приеме, состоит в том, что результат выполнения каждого шага цикла, зависит от значения переменной, вычисленной на предыдущем шаге. Таким образом, вместо тривиального повторения одного и того же, мы на каждом шаге получаем новый результат. Так в приведенном примере очередное число добавляется к значению переменной s, полученному на предыдущем шаге.
А к чему добавляется очередное число на самом первом шаге? Чтобы было к чему добавлять, перед циклом обязательно должна присутствовать инициализация (присваивание начального значения) переменной, в которой накапливается сумма. Чаще всего требуется присвоить ей начальное значение 0.
Программистский анекдот в тему:
Буратино подарили три яблока. Два он съел. Сколько яблок осталось у Буратино? Ответ «одно» неправильный. Неизвестно, сколько осталось, так как не сказано, сколько яблок было у него до того, как ему подарили три новых. Мораль: не забывайте обнулить переменные.
Следующий раздел:
Предыдущий раздел:
Здравствуйте, Тарас!
Нельзя преобразовать тип string к integer
Вот что мне написало, в этом фрагменте программы:
s1:=0;
for i1:= 1 to n1 do
begin
readln(b1);
s1:=s1+b1; === вот здесь.
end;
Как с этим бороться?
В сие программе я в var задал каждой букве определенное число ==> a:=1; b:=2; c:=3; d:=4; e:=5;…..
И я хотел бы что бы когда вводили (b1) (буквой лат. алф.)она преобразовалась в нужную цифру, и дальше считалась с остальными заданными, и теми которые зададут. Как это сделать?
Переменная e и символ ‘e’ связаны между собой только в твоей голове. Компьютер об этом ничего не знает, до тех пор пока ты явно ему об этой связи не скажешь. Например, так:
Если символ равен ‘e’, тогда использовать переменную e.
То есть: