Форум программистов, компьютерный форум CyberForum.ru

теория - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.71
//Александр
 Аватар для //Александр
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 151
30.09.2010, 13:55     теория #1
Добрый день!!! срочно нужины 2 примера :
1)чтобы нельзя было заменить цыкл for на while
и еще один пример когда есть цыкл while но его нельзя заменить на for?? помогите плиз сижу на экзамене
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.09.2010, 13:55     теория
Посмотрите здесь:

C++ теория
теория C++
C++ Теория
Теория C++
теория C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
30.09.2010, 13:58     теория #2
//Александр, сложно найти такой пример, потому что всегда можно заменить for на while, а while на for
//Александр
 Аватар для //Александр
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 151
30.09.2010, 14:01  [ТС]     теория #3
я и обратился потому что не могу придумать такие примеры а препод сказал что такие случаи есть....
помогите чем сможите
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
30.09.2010, 14:04     теория #4
на машине, чьи вычисления сводятся только к операции сложения, нельзя заменить один цикл другим?
//Александр
 Аватар для //Александр
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 151
30.09.2010, 14:27  [ТС]     теория #5
есть какие то соображения по этому поводу скоро отвечать нужно будет, а я не пойму что ему сказать
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
30.09.2010, 14:28     теория #6
попросите чтобы он привел пример с условием, что вы не будете его использовать
//Александр
 Аватар для //Александр
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 151
30.09.2010, 14:35  [ТС]     теория #7
я уже спрашивал он примеры не приводит сказал что бы сам думал, а я не могу придставить когда эти цыклы нельзя заменить...
LineStown
 Аватар для LineStown
63 / 63 / 3
Регистрация: 04.08.2010
Сообщений: 399
30.09.2010, 14:40     теория #8
Считывание из файла.
Еще когда условие в while стоит 'или' , а в for 2 условия идут 'и'
C++
1
2
3
4
int a,b;
while((a<5)||(b>3)){}
 
for(int a=1,b=1;a<5,b>3;a++,b--)
Ну где то так
//Александр
 Аватар для //Александр
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 151
30.09.2010, 14:43  [ТС]     теория #9
препод сказал что такие ситуации возможны когда используешь break; и continue;
я вообще теперь не знаю что думать....
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
30.09.2010, 14:54     теория #10
//Александр,
Может, он и сам не знает таких примеров? Представь: поспорили они с другими преподами, ему все говорят, что таких случаев нет, а он из упрямства своего говорит, что есть. Вот они ему и сказали "найди пример". Он сам не нашёл, решил коллективный разум подключить... Мучает теперь бедных студентов и зачёты им не ставит...
LineStown
 Аватар для LineStown
63 / 63 / 3
Регистрация: 04.08.2010
Сообщений: 399
30.09.2010, 14:56     теория #11
цикл do-while выполнится всегда хоть один раз, а for не всегда (если do-while катит в сравнение )
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
30.09.2010, 14:58     теория #12
LineStown,
А мы вроде про for и while говорим, и тот, и тот не всегда выполнится...
//Александр
 Аватар для //Александр
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 151
30.09.2010, 14:59  [ТС]     теория #13
ХЗ, может и так но мне особо деватся некуда всеравно прийдется что то говорить, но ничего умного по этому поводу не могу придумать........... я ему какой пример не приведу он всеравно говорит что можна поставить условие и эти цыклы можно будет заменить, вот сказал что при использованье break и continue есть случаи когда они не заменяються.

да задание идет о while а не о do while.
LineStown
 Аватар для LineStown
63 / 63 / 3
Регистрация: 04.08.2010
Сообщений: 399
30.09.2010, 15:00     теория #14
Цитата Сообщение от silent_1991 Посмотреть сообщение
LineStown,
А мы вроде про for и while говорим, и тот, и тот не всегда выполнится...
Ну вообще то whille и do-while как бы один и тот же цикл, только с предусловием и постусловием
//Александр
 Аватар для //Александр
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 151
30.09.2010, 15:01  [ТС]     теория #15
да задание идет о while а не о do while.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
30.09.2010, 15:03     теория #16
LineStown,
Ну из того, что они по-разному выполняются, следует то, что это разные циклы, просто и в том, и в том используется слово while... Например в Pascal есть цикл while (аналог, как не трудно догадаться, цикла while в Си), а есть repeat...until (аналог цикла do...while в Си).
LineStown
 Аватар для LineStown
63 / 63 / 3
Регистрация: 04.08.2010
Сообщений: 399
30.09.2010, 15:07     теория #17
Цитата Сообщение от silent_1991 Посмотреть сообщение
LineStown,
Ну из того, что они по-разному выполняются, следует то, что это разные циклы, просто и в том, и в том используется слово while... Например в Pascal есть цикл while (аналог, как не трудно догадаться, цикла while в Си), а есть repeat...until (аналог цикла do...while в Си).
Вот для этого я и указал в скобках примечание.
//Александр
 Аватар для //Александр
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 151
30.09.2010, 15:15  [ТС]     теория #18
он сказал что тупанул, ошибся типа таких примеров не существует. но экзамен закрыл .. я в шоке..
ладно ухожу Всем огромное спасибо
ooki2day
 Аватар для ooki2day
12 / 12 / 0
Регистрация: 23.10.2008
Сообщений: 281
30.09.2010, 16:45     теория #19
сдавал экз я,Саня дома сидел у компа)))спасибо всем кто помогал.раскрываю тему!!!!
задание:привести пример того, что цикл for( ; ; ){} нельзя заменить циклом while( ){} (в смысле,что при одинаковых действиях один будет выполняться,а другой нет). и наоборот. голову ломал, он дал подсказку break и continue.
с континюном проблем не возникло.вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int main()
{
for(i=0;i<1;i++)
{
   if(i==0)
      continue;
}
}
 
int main()
{
   i=0;
   while(i<1)
   {
      if(i==0)
         continue;
      i++;
   }
}
как видите, while зациклен, а из for'a вышел без проблем.потом я его достал тем,что через break это сделать невозможно.он подумал минуту,две...с задумчивым видом сказал "да,что-то я ошибся.давайте зачетку".
я не мог выйти из аудитории без матов!!!!!!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.09.2010, 17:13     теория
Еще ссылки по теме:

C++ Теория по С++
Теория по С++ C++
Теория по С++ C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
30.09.2010, 17:13     теория #20
Собственно... Не знаю в тему-ли я? Но...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
int main()
{
    int i=0;
while(++i<3)
{
    if(i>1)
       break;
    std::cout<<i<<'\n';
}
 i=0;
for(int i=0; i<3; ++i)
{
    if(i>1)
       break;
    std::cout<<i<<'\n';
}
return 0;
}
Yandex
Объявления
30.09.2010, 17:13     теория
Ответ Создать тему
Опции темы

Текущее время: 23:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru