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

Для указанного года распечатать все числа, попадающие на воскресенье - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ругань на объявление массива внутри класса http://www.cyberforum.ru/cpp-beginners/thread652149.html
Задание: создать класс-контейнер, реализующий политику FIFO. Имею код: CQueue.h #ifndef __CQUEUE_H__ #define __CQUEUE_H__ class CQueue { public: CQueue() { arr_size = 50; start = 0; end = 0; };
C++ Класс стека Здравствуйте!помогите создать класс стека, чтобы входные данные были из списка....как я понимаю, это должно быть в конструкторе или нет? и правильно ли я пытаюсь реализовать? #include "stdafx.h" #include <iostream> #include <windows.h> using namespace std; const int maxlen =100; class stack http://www.cyberforum.ru/cpp-beginners/thread652144.html
C++ очень глобальное определение
скачал curl - там функции не добавлены в импорт, следственно в скомпилированной либе их нет. вот в чём суть проблемы надо как нибудь обявить все функции в раздел импорта как это сделать?
Консольное приложение C++ не работает C++
Всем доброго времени суток. вот начал изучать язык C++. попробовал написать простейшее консольное приложение в Visual studio 2012. Стандартный "Hello World!" получился на ура) а тут я не понимаю в чем ошибка. Суть программы состоит в том, что она слева выводит температуру по Цельсию, а справа по Фаренгейту. С шагом 20 градусов Цельсия. У меня же получается все по нулям... подскажите где я в...
C++ Представление графа через вектор векторов http://www.cyberforum.ru/cpp-beginners/thread652110.html
Есть граф, нужно записать его список смежности в вектор векторов, на практике в ВУЗе был дан алгоритм, но есть проблема программа считывает только первую строку а адальше все проскакивает, собственно вот код #include<fstream> #include<sstream> #include<iostream> #include<string> #include <vector> #include <algorithm> using namespace std; ifstream in("input.txt"); ofstream...
C++ Функции C++ Всем привет! Начал переходить на С++. Вот увидел такой кусок кода вы не прокомментируете строчку: sscanf(ch, "R%I64dC%I64d", &l, &r) == 2 Меня интересует вот, что : 2 это код ошибки? если да, то какие еще есть коды ошибок у этой и у scanf. Буду благодарен, если кините ссылку на какую нибудь статью или что -то в этом роде подробнее

Показать сообщение отдельно
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
15.09.2012, 16:11     Для указанного года распечатать все числа, попадающие на воскресенье
Вот функция, в которую нужно передать флаг високосности года и номер первого дня года (первый номер - понедельник). Наверное, можно сделать более рационально, но, по крайней мере, работает. Нужно дополнить программу функциями вычисления високосности года (с возвращением bool) и номера первого дня года.
Код
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#include <cstdlib>
#include <iostream>
#include <windows.h>
#include <string>
#include <iomanip>
using namespace std;
 
void getSunday(char *arr[], bool flag, int first);
 
int main()
{
setlocale(0, "");
 
char *arr[12] = {"январь",   "февраль", "март",   "апрель", 
                 "май",      "июнь",    "июль",   "август", 
                 "сентябрь", "октябрь", "ноябрь", "декабрь"};
 
bool flag; // флаг високосного года
int first; // номер первого дня в году (воскресенье = 7)
 
cout << "Введите номер первого дня года (понедельник = 1) : ";
cin >> first; 
cout << "Если год високосный, введите 1, если нет - 0 : ";
cin >> flag;
 
getSunday(arr, flag, first);
 
cout << endl;
system("pause");
return 0;
}
 
void getSunday(char *arr[], bool flag, int first)
{
  
  int febr; // число дней февраля
 
  if (flag == true) febr = 29;
  else febr = 28; 
 
  int month = 31; 
  
  int i; // число первого воскресенья в году
  if (first != 7) i = 8 - first;
  else i = 1;
  
  cout << "Воскресенье :" << endl;
  cout << arr[0] << endl;
  for (int j = 0, m = 1; j < 12; i += 7)
  {
      cout << setw(3) << i << " ";
 
      if ((i + 7 ) > month) 
      {
          if (j == 11) break;
          i = (i + 7) - month;
          m++;
          if (m < 9) // до сентября
          {
          if (m == 2) month = febr; // если февраль
          else if (m % 2)month = 31;
               else if (m == 8) month = 31; // если август
                    else month = 30;
          }
          else if (m % 2)month = 30; // с сентября
               else month = 31;
          j++;
          if (j < 12) cout << endl << arr[j] << endl;
          cout << setw(3) << i << " ";
       }
   }
}
 
Текущее время: 15:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru