Помощь - Поиск - Пользователи - Календарь
Полная версия: Увеличение шага цикла For
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Делфи
Наська
помогите:
вопрос вот в чем - можно ли увеличить шаг for'а с одного до 2?
что бы получилась такая строчка 2*4*6*8*... или 1*3*5*7*9*...
Malice
Цитата(Наська @ 20.04.2007 16:32) *

помогите:
вопрос вот в чем - можно ли увеличить шаг for'а с одного до 2?
что бы получилась такая строчка 2*4*6*8*... или 1*3*5*7*9*...

for i:=1 to n do
j:=i*2;
{или}
j:=i*2-1;


J и используй дальше.
klem4
Или как вариант использовать другие виды циклов (while, repeat)
Наська
а вобщем в чем тема -
дано i, если оно четное, то высчитать такой ряд 2*4*..*i, если оно нечетное, то считать 1*3*5*..*i.
уместно ли здесь использовать for. если да, то как?
volvo
Цитата
уместно ли здесь использовать for
Не совсем ... Repeat/Until будет здесь логичнее... Причем, начинать считать надо не с 1, и не с 2. А с самого i - уменьшая его на 2, пока оно не будет меньше единицы.
Наська
вот какую вещ йа делала -
2i? ?- если i-четное, то 2*4*..*i
если не четное, то 1*3*5*..i

//Проверка на четность
if n mod 2 = 0 then
begin
if n = 2 then d := 2
else
begin
d := 1;
repeat
d := d * n;
n := n - 2;
until n = 0;
end;
end;
//Проверка на нечетность
if n mod 2 <> 0 then
begin
if n = 1 then d := 1
else
begin
d := 1;
repeat
d := d * n;
n := n - 2;
until n = 1;
d := d*2
end;
end;

 ! 
Теги надо ставить....
мисс_граффити

Malice
Не понял sad.gif Не тоже самое ?

d := 1;
repeat
d := d * n;
n := n - 2;
until n <= 0;


Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.