roboforum.ru

Технический форум по робототехнике.

Язык программирования С++

Re: Язык программирования С++

coder_perm » 24 окт 2010, 10:31

Pirate писал(а):В общем вопрос остается актуален. Если кто-то может человеческим языком разжевать для чего в программах нужны циклы, для чего их используют, просьба написать.

Для работы с массивами, например. Не вручную же каждый элемент массива перебирать... :no:

Re: Язык программирования С++

Angel71 » 24 окт 2010, 10:35

:ROFL: ото ни в одной книге масивы циклами не перебирали
:crazy: http://ru.wikipedia.org/wiki/Цикл_(программирование)

Re: Язык программирования С++

Pirate » 24 окт 2010, 10:54

Angel71 писал(а):http://ru.wikipedia.org/wiki/Цикл_(программирование)

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



Пожалуй попробую спросить по другому.

Может ли кто-то написать для чего используется в программировании цикл.
В ответе хотелось бы увидеть человеческое объяснение, например :
берет прописанную в условии переменную int primer со значением 5 и делает с ней ....


Мне нужно понять для чего можно применить цикл в программе...
По книгам я понял что циклы (возьмем в пример for) могут брать какую либо переменную заранее проверить подходит ли для вычисления ее тела значение переменной, чтобы выполнить тело, или перепрыгнуть сразу дальше через тело цикла, если не подошло.
В самом цикле как я понял на примерах в этих переменных либо прибавляется либо отнимается по какому либо числу (1 там 2), дойдя до какого либо числа происходит выход из цикла, и продолжается выполнение программы дальше. Но для чего на практике нужны эти циклы, для чего нужно к переменной со значением 5 прибавлять по единице, доводя ее до скажем значения 50, если это можно было сделать просто заменив ее значение в ходе программы в нужном нам месте программы и все..? И вот тут или я че-то не догнал или все таки не догнал для чего циклы. :(

Re: Язык программирования С++

Angel71 » 24 окт 2010, 11:21

а ничего, что в вики рассмотрение начинается с
Код: Выделить всёРазвернуть
while(<условие>)
{
   <тело цикла>
}

и
Код: Выделить всёРазвернуть
do
{
    <тело цикла>
}
while(<условие>)

8) и де тут переменная?
:) пример, для особо непонятливых:
Код: Выделить всёРазвернуть
do
{
   удар головой ап стену;
}
while(нет шишки на лбу)


а теперь играемся с числами Фибоначчи и вникаем, накой нужны циклы со счётчиками.
f[1] = 1
f[2] = 1
f[n+2] = f[n+1] + f[n]
дабы не генерить в миллионный раз этот простенький код, привожу код из "Руководство полного идиота по программированию (на языке Си)" http://www.helloworld.ru/texts/comp/lang/c/c6/index2.htm
Код: Выделить всёРазвернуть
#include       /* магическая строка */
#define N 20            /* сколько первых чисел посчитать */

void main(){
        int fibs[N], index;

        fibs[0] = 1;    /* индексы отсчитываются с нуля!!! */
        fibs[1] = 1;

        /* Тут показано, что индекс элемента массива может вычисляться */

        for(index=2; index < N; index++)
                fibs[index] = fibs[index-1] + fibs[index-2];

        /* Распечатка в обратном порядке */
        for(index = N-1; index >= 0; index--)
                printf("%d-ое число Фибоначчи есть %d\n",
                        index+1,                   fibs[index]);
}

Re: Язык программирования С++

Pirate » 24 окт 2010, 17:29

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

Re: Язык программирования С++

Angel71 » 24 окт 2010, 17:34

т.е. простыми словами это ни разу не оператор.
:o проще уже некуда
Цикл — разновидность управляющей конструкции в высокоуровневых языках программирования, предназначенная для организации многократного исполнения набора инструкций. Также циклом может называться любая многократно исполняемая последовательность инструкций, организованная любым способом (например, с помощью условного перехода).

Re: Язык программирования С++

Pirate » 24 окт 2010, 17:41

ок напишу по другому.

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

?

Re: Язык программирования С++

Angel71 » 24 окт 2010, 17:46

Код: Выделить всёРазвернуть
yahoo:
goto yahoo;

Re: Язык программирования С++

Pirate » 24 окт 2010, 18:11

ну вот и отлично

Re: Язык программирования С++

yozik0ff » 25 окт 2010, 10:41

Чтобы понять рекурсию нужно сначала понять рекурсию...
Про циклы вы это серьезно?

Re: Язык программирования С++

Pirate » 25 окт 2010, 19:27

yozik0ff писал(а):Чтобы понять рекурсию нужно сначала понять рекурсию...
Про циклы вы это серьезно?

ага


Rambler\'s Top100 Mail.ru counter