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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Sipatuj
4 / 4 / 0
Регистрация: 16.07.2013
Сообщений: 164
#1

Вывод с задержкой каждого нового cout на полсекунды - C++

31.12.2013, 22:16. Просмотров 771. Ответов 12
Метки нет (Все метки)

Вот к примеру есть код
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>                     
using namespace std;                    
int main()                              
{                                       
 cout<<"Предложение 1\n";    
 cout<<"Предложение 2\n"; 
 cout<<"Предложение 3\n"; 
 cout<<"Предложение 4\n"; 
 return 0;                               
}
Как выводить каждый cout через к примеру 0,5секунд.
ТОбто
первый cout потом через 0,5 cout ищё через 0,5 cout и так пока все cout не выведется.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.12.2013, 22:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывод с задержкой каждого нового cout на полсекунды (C++):

Последовательный вывод элементов массива на экран с задержкой - C++
Допустим, имеется какой-то простой массив на 10 элементов. Объясните, пожалуйста, как эти элементы выводить на экран не все сразу, а с...

Вывод в cout - C++
Добрый вечер. Есть код: #include &lt;iostream&gt; using namespace std; class queue { int q; int sloc, rloc; public: void...

Вывод string в cout - C++
Доброго времени суток, возникла проблема с описанием функции show(). //bank.h #include &lt;cstring&gt; class Bank { private: ...

Странный вывод cout - C++
Здравствуйте. Я обнаружил внезапно, что у меня как-то очень выборочно работает cout. Вод код: #include &lt;iostream&gt; ...

Пятнашки не работают. Вывод с cout - C++
Ребят помогите разобрать. Написал. вроде работало. Препод поросил переделать и все посыпалось. По парядку...не работает...

Вывод адреса символа в cout - C++
Здравствуйте. Подскажите пожалуйста в чём может быть проблема . #include&lt;iostream&gt; int main() { char z = 'M'; char* symbol =...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Esecman
38 / 26 / 6
Регистрация: 31.12.2013
Сообщений: 329
31.12.2013, 22:23 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>                     
using namespace std;  
 
void wait ( int seconds ) // доступно для int. Если сделать double seconds(будет работать, но есть варнинг)
{
  clock_t endwait;
  endwait = clock () + seconds * CLOCKS_PER_SEC ;
  while (clock() < endwait) {}
}         
         
int main()                              
{                                       
 cout<<"Предложение 1\n";
 wait(1);
 cout<<"Предложение 2\n"; 
 wait(1);
 cout<<"Предложение 3\n"; 
 wait(1);
 cout<<"Предложение 4\n"; 
 wait(1);
 return 0;                               
}
0
Sipatuj
4 / 4 / 0
Регистрация: 16.07.2013
Сообщений: 164
31.12.2013, 23:07  [ТС] #3
НУ решил ситуацию проще


Sleep(); =))) прямолинейно и в лоб=)))
0
alsav22
5419 / 4815 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
31.12.2013, 23:28 #4
Цитата Сообщение от Sipatuj Посмотреть сообщение
Sleep(); =))) прямолинейно и в лоб=)))
И нестандарт...
0
Sipatuj
4 / 4 / 0
Регистрация: 16.07.2013
Сообщений: 164
31.12.2013, 23:35  [ТС] #5
Цитата Сообщение от alsav22 Посмотреть сообщение
И нестандарт...
Ну мне сейчас больше результат нужен=)
0
alsav22
5419 / 4815 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
31.12.2013, 23:41 #6
Цитата Сообщение от Sipatuj Посмотреть сообщение
Ну мне сейчас больше результат нужен=)
Разве в коде Esecman нет результата?
0
2ima
☆ Форумчанин(FSC)☆
910 / 289 / 9
Регистрация: 28.04.2013
Сообщений: 2,381
Записей в блоге: 10
Завершенные тесты: 1
31.12.2013, 23:48 #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>                     
using namespace std;  
 
void wait ( int seconds ) // доступно для int. Если сделать double seconds(будет работать, но есть варнинг)
{
  clock_t endwait;
  endwait = clock () + seconds * CLOCKS_PER_SEC ;
  while (clock() < endwait) {}
}         
         
int main()                              
{                                       
 cout<<"Предложение 1\n";
 wait(0.5);
 cout<<"Предложение 2\n"; 
 wait(0.5);
 cout<<"Предложение 3\n"; 
 wait(0.5);
 cout<<"Предложение 4\n"; 
 wait(0.5);
 return 0;                               
}
0
Sipatuj
4 / 4 / 0
Регистрация: 16.07.2013
Сообщений: 164
31.12.2013, 23:49  [ТС] #8
Цитата Сообщение от alsav22 Посмотреть сообщение
Разве в коде Esecman нет результата?
Почемуже, я благодарен Esecman за отзыв просто до него уже написал использованием Sleep(); , хотел уже писать на форум что нашол решение и тут он ответил.
0
2ima
☆ Форумчанин(FSC)☆
910 / 289 / 9
Регистрация: 28.04.2013
Сообщений: 2,381
Записей в блоге: 10
Завершенные тесты: 1
31.12.2013, 23:50 #9
Может так уже?

Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>                     
using namespace std;  
 
void wait ( int seconds ) // доступно для int. Если сделать double seconds(будет работать, но есть варнинг)
{
  clock_t endwait;
  endwait = clock () + seconds * CLOCKS_PER_SEC ;
  while (clock() < endwait) {}
}         
         
int main()                              
{                                       
 cout<<"Предложение 1\n";
 wait(0.5);
 cout<<"Предложение 2\n"; 
 wait(0.5);
 cout<<"Предложение 3\n"; 
 wait(0.5);
 cout<<"Предложение 4\n"; 
 wait(0.5);
 return 0;                               
}
0
alsav22
31.12.2013, 23:56
  #10

Не по теме:

Цитата Сообщение от Sipatuj Посмотреть сообщение
Почемуже, я благодарен Esecman за отзыв просто до него уже написал использованием Sleep(); , хотел уже писать на форум что нашол решение и тут он ответил.
Понятно.

0
Esecman
38 / 26 / 6
Регистрация: 31.12.2013
Сообщений: 329
01.01.2014, 11:01 #11
Цитата Сообщение от FSC Посмотреть сообщение
Может так уже?

Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>                     
using namespace std;  
 
void wait ( int seconds ) // доступно для int. Если сделать double seconds(будет работать, но есть варнинг)
{
  clock_t endwait;
  endwait = clock () + seconds * CLOCKS_PER_SEC ;
  while (clock() < endwait) {}
}         
         
int main()                              
{                                       
 cout<<"Предложение 1\n";
 wait(0.5);
 cout<<"Предложение 2\n"; 
 wait(0.5);
 cout<<"Предложение 3\n"; 
 wait(0.5);
 cout<<"Предложение 4\n"; 
 wait(0.5);
 return 0;                               
}
Так не будет работать правильно
Так как int число без знака, значит 0.5 округляется, как 1.
Нужно использовать либо float, либо double;

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <iostream>
#include <windows.h>    
/* Russian symbols on the Dev-C++ :) */
std::ostream& operator<<(std::ostream& out, const char* str)
{
    char* s=new char[std::strlen(str)+1];
    AnsiToOem(str,s);
    return std::operator<<(out,s);
}
 
std::ostream& operator<<(std::ostream& out, std::string& str)
{
    return out<<str.c_str();
}
/* End */
                 
using namespace std;  
 
void wait ( double seconds ) // доступно для int. Если сделать double seconds(будет работать, но есть варнинг)
{
  clock_t endwait;
  endwait = clock () + seconds * CLOCKS_PER_SEC ;
  while (clock() < endwait) {}
}         
         
int main()                              
{                                       
 cout<<"Предложение 1\n";
 wait(0.5);
 cout<<"Предложение 2\n"; 
 wait(0.5);
 cout<<"Предложение 3\n"; 
 wait(0.5);
 cout<<"Предложение 4\n"; 
 wait(0.5);
 return 0;                               
}
0
uhx
60 / 60 / 6
Регистрация: 11.07.2013
Сообщений: 304
01.01.2014, 17:48 #12
Цитата Сообщение от Esecman Посмотреть сообщение
Так как int число без знака, значит 0.5 округляется, как 1.
Нет. Даже если ввести в int 0.99, то будет 0 ._.
Ведь инт выводит целую часть, но никак не округляет.
Округлять надо по другому.
0
Esecman
38 / 26 / 6
Регистрация: 31.12.2013
Сообщений: 329
01.01.2014, 21:50 #13
Цитата Сообщение от uhx Посмотреть сообщение
Нет. Даже если ввести в int 0.99, то будет 0 ._.
Ведь инт выводит целую часть, но никак не округляет.
Округлять надо по другому.
Ах, да. Все верно
Ошибся немног
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.01.2014, 21:50
Привет! Вот еще темы с ответами:

Форматный вывод с помощью cout - C++
У меня простой вопрос. В си есть такая функция printf. Что-бы вывести дробное число k без всяких там E можно написать printf(&quot;%f&quot;,k)....

Странный вывод оператором cout - C++
Доброго времени суток. Написал код: #include &lt;iostream&gt; #include &lt;typeinfo&gt; #include &lt;cxxabi.h&gt; int main() { int* ...

Вывод числа с разбитием на разряды (cout) - C++
Добрый время суток! Вот чую зря создавал новую тему но все же... Вот хоть убейте не помню как сделать таким образом что бы: ...

Вывод элементов структуры через cout - C++
Здравствуйте! Подскажите, почему в моём простом примере при попытке вывести элементы структуры через cout я не получаю ожидаемый...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
01.01.2014, 21:50
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru