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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
wirka
0 / 0 / 0
Регистрация: 30.07.2009
Сообщений: 4
#1

Алгоритм программы - C++

30.07.2009, 18:36. Просмотров 1213. Ответов 8
Метки нет (Все метки)

Доброго времени суток. Есть программа, она выводит время до определенной даты
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
38
#include <time.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
 
#ifdef WIN32
# define SLEEP(x) Sleep(x)
#else /* WIN32 */
# include <unistd.h>
# define SLEEP(x) usleep(x*1000)
#endif /* WIN32 */
#include <iostream>
#define _WIN32_WINNT 0x0500
 
int main()
{  
   struct tm targetDate; 
   memset(&targetDate, 0, sizeof(targetDate));
  
 //задаем дату
   targetDate.tm_year = 110; //год от 1900
   targetDate.tm_mon = 6; //месяц
   targetDate.tm_mday = 9; //день
   time_t tDate = mktime(&targetDate); //это указанная дата в секундах от 01.01.1970
   do{ 
       system ("cls");
       time_t curTime = time(NULL); //текущее время в секундах от 01.01.1970
       time_t dtime = tDate - curTime; //сколько осталось времени (в секундах, общее)
       time_t dsec = dtime%60; //сколько секунд осталось
       time_t dmin = (dtime/60)%60; //сколько минут осталось
       time_t dhour = ((dtime/60)/60)%24; //сколько часов осталось
       time_t ddays = ((dtime/60)/60)/24; //сколько дней осталось
       printf ("\n");
       printf ("   осталось %lu дн. %lu час. %lu мин. %lu сек.\n", (unsigned long) ddays, (unsigned long) dhour, (unsigned long) dmin, (unsigned long) dsec);
       SLEEP(1000); //ждем секунду
   } while (1);
   return 0;
}
тут такое дело нужно описать алгоритм действия и нарисовать блок схему...
Плиз хелп... опишите хотябы на словах(как можно подробнее алгоритм действия).
Что такое SLEEP(1000);
и почему while (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2009, 18:36     Алгоритм программы
Посмотрите здесь:

Построить алгоритм программы - C++
#include &lt;iostream.h&gt; int main() { int n; cout &lt;&lt; &quot;Vvedite kol-vo cifer&quot; &lt;&lt;endl; cin &gt;&gt; n; char name; ...

Алгоритм для программы - C++
Как сделать алгоритм для этой программы: #include &lt;conio.h&gt; #include &lt;iostream&gt; #include &lt;math.h&gt; int main() { double a;...

Написать алгоритм работы программы - C++
#include &lt;iostream&gt; #include &lt;cstring&gt; #include &lt;ctime&gt; using namespace std; int main() { char b; int k; ...

Пошаговый алгоритм выполнения программы - C++
Составьте пожалуйста пошаговый алгоритм выполнения( тема : Перегрузка операций - тут бинарное сложение) #include &lt;iostream&gt; using...

подробный алгоритм работы программы - C++
#include&lt;iostream.h&gt; /*библиотека, отвечающая за потоковый ввод-вывод*/ #include&lt;fstream.h&gt; /*отвечает за файловый ввод-вывод*/ int...

Алгоритм и код программы (микрофотографии) - C++
Помогите определить размер частиц, посчитать количество частиц, определить размер. (микрофотографии) Заранее спасибо!

Объяснить алгоритм работы программы - C++
На чёрно-белом изображении размером A строк x B столбцов необходимо найти полностью белый квадрат с максимальной площадью. Формат...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zim22
depict1
276 / 141 / 2
Регистрация: 11.07.2009
Сообщений: 606
30.07.2009, 18:40     Алгоритм программы #2
Цитата Сообщение от wirka Посмотреть сообщение
Что такое SLEEP(1000);
время задержки, в течении которого программа "виснет". 1000 мс = 1 секунда.
Цитата Сообщение от wirka Посмотреть сообщение
и почему while (1)
это вечный цикл. условие выхода помещается внутрь него.
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
30.07.2009, 18:43     Алгоритм программы #3
Что такое SLEEP(1000);
В коде ясно написано.
wirka
0 / 0 / 0
Регистрация: 30.07.2009
Сообщений: 4
30.07.2009, 18:45  [ТС]     Алгоритм программы #4
ну сэтим понятно, спс, а есле описать алгоритм действия программы на словах....(построчно)
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
30.07.2009, 18:50     Алгоритм программы #5
В цикле через 1 секунду выводит сколько дней,часов,минут и секунд осталось до заданной даты.

Добавлено через 23 секунды
Неясно зачем тут <iostream>
wirka
0 / 0 / 0
Регистрация: 30.07.2009
Сообщений: 4
30.07.2009, 18:52  [ТС]     Алгоритм программы #6
ок, что такое
struct tm targetDate;
и
memset(&targetDate, 0, sizeof(targetDate));
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
30.07.2009, 21:30     Алгоритм программы #7
struct tm type
<ctime>


Time structure

Structure containing a calendar date and time broken down into its components.

The structure contains nine members of type int, which are (in any order):int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;



The meaning of each is:Member Meaning Range
tm_sec seconds after the minute 0-61*
tm_min minutes after the hour 0-59
tm_hour hours since midnight 0-23
tm_mday day of the month 1-31
tm_mon months since January 0-11
tm_year years since 1900
tm_wday days since Sunday 0-6
tm_yday days since January 1 0-365
tm_isdst Daylight Saving Time flag

The Daylight Saving Time flag (tm_isdst) is greater than zero if Daylight Saving Time is in effect, zero if Daylight Saving Time is not in effect, and less than zero if the information is not available.

* tm_sec is generally 0-59. Extra range to accommodate for leap seconds in certain systems.


targetDate-сам объект Struct'уры tm.Над которым и происходят различные действия.

Описание функций C (Си) / C++ - memset

#include требуется только для объявления
#include функции; использует либо
, либо

char *memset (dest, c, cnt);
char *dest; указатель на результат
int c; символ-заполнитель
unsigned cnt; количество символов

Описание.

Функция memset заполняет первые cnt байтов буфера dest сим-
волом c.

Возвращаемое значение.

Функция memset возвращает указатель на буфер dest.
См.также memccpy, memchr, memcmp, memcpy

Пример:

#
C++
1
2
3
4
5
include 
char buffer [100];
/* заполняет первые 100 байтов buffer
** нулями */
memset (buffer, '', 100);
wirka
0 / 0 / 0
Регистрация: 30.07.2009
Сообщений: 4
30.07.2009, 22:04  [ТС]     Алгоритм программы #8
struct tm targetDate; - это понял, спасибо,а с memset(&targetDate, 0, sizeof(targetDate)); так и догнал...
можна расказать именно на моем примере..плз=)

И еще что такое reurn 0, почему возвращаем ноль, что это значит... извините за тупые вопросы, но я нуб, а этот код нужно разобрать до меолчей
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.07.2009, 23:07     Алгоритм программы
Еще ссылки по теме:

Подскажите алгоритм организации программы-теста - C++
Здравствуйте! Суть такова - у пользователя есть 8 вариантов ответа, он может выбрать только 4. После этого выбора каждый из 4 вариантов...

Трудность в создании программы на С++ линейный алгоритм - C++
длина отрезка задана в дюймах(1 дюйм=2,54 см). перевести значения длины в метрическую систему, то есть выразить её в метрах сантиметрах и...

Не пойму алгоритм программы. Функция total - C++
Вот сижу, читаю, не пойму почему в этом примере #include &lt;conio&gt; #include &lt;iostream&gt; using namespace std; void total (int x);...

Описать алгоритм как работает код программы - C++
Здравствуйте. Помогите пожалуйста разобраться в коде, какой тут алгоритм, какая строчка что делает. #include &lt;pthread.h&gt; #include...

Какой алгоритм и математическая модель у данной программы? - C++
Парными простыми числами называют два простых числа, разность которых равна двум, например: 3 и 5; 17 и 19. Напишите программу нахождения n...


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

Или воспользуйтесь поиском по форуму:
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
30.07.2009, 23:07     Алгоритм программы #9
return 0 - стандартный код успешного завершения программы.
Yandex
Объявления
30.07.2009, 23:07     Алгоритм программы
Ответ Создать тему
Опции темы

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