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

Немного переделать программу - C++

Восстановить пароль Регистрация
 
niznay
1 / 1 / 0
Регистрация: 12.09.2013
Сообщений: 22
16.11.2013, 19:38     Немного переделать программу #1
Вот программа которая показывает календарь месяца по вводу номера года и месяца
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
#include <conio.h>
#include <iostream>
using namespace std;
 
int GetDOW (int day, int month, int year) //определение дня недели
{           //1 - понедельник, 7 - воскресение
 int w, a, y, m;
 a = (14-month)/12;
 y = year-a;
 m = month+12*a-2;
 w = (7000 + (day + y + y/4 - y/100 + y/400 + (31*m)/12))%7;
 if (w==0) w = 7; //по алгоритму воскресение - 0, меняем на 7
 return w;
}
 
void main()
{
 cout << "Input year: "; //ввод данных
 int year, month;
 cin >> year;
 cout << "\nInput month: ";
 cin >> month;
 //проверка на корректность
 if (year<0 || month<=0 || month>12) { cout << "\nBad data"; _getch(); return; }
 int days; //число дней в месяце
 if (month!=2) { //если не февраль, выбираем 30 или 31 день
  if ((month<7 && month%2==0) || (month>7 && month%2!=0)) days=30;
  else days = 31;
 } else { //если февраль, проверяем год на високосность
  if (!((year%100!=0 && year%4==0) || year%400==0)) days=28;
  else days=29;
 }
 int w = GetDOW (1, month, year); //получаем день недели
 cout << "\n Mo Tu We Th Fr Sa Su\n"; //выводим заголовок
 for (int i=1; i<w; i++) cout << "   "; //выводим пробелы до первого числа
 for (int i=1; i<=days; i++, w++) { //выводим календарь
  printf ("%3d", i);
  if (w%7==0) cout << endl; //каждую неделю переводим курсор на след. строку
 }
 _getch ();
}
Помогите пожалуйста переделать ее так,чтобы весь код был в void main(то есть возвращение(return) реализовать с помощью цикла)
и если не сложно убрать printf с getch,заменив (чтобы подклюдчалась одна библиотека #include <iostream> )
Я новичек<заранее благодарен за помощь

Добавлено через 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
39
40
41
42
43
44
45
#include <iostream>
using namespace std;
void main(){
setlocale(LC_ALL,"");
int g ;int days; int month; int year,w,d=0,a,y,m; 
 
 
cout << "Введите год: "; //ввод данных
 
 cin >> year;
 cout << "\nВведите месяц: ";
 cin >> month;
 
 if (month!=2) { //если не февраль, выбираем 30 или 31 день
  if ((month<7 && month%2==0) || (month>7 && month%2!=0)) days=30;
  else days = 31;
 } else { //если февраль, проверяем год на високосность
  if (!((year%100!=0 && year%4==0) || year%400==0)) days=28;
  else days=29;
 }
 do{
 
 a = (14-month)/12;
 y = year-a;
 m = month+12*a-2;
 w = (7000 + (days + y + y/4 - y/100 + y/400 + (31*m)/12))%7;
 //if (w==0) w = 7; //по алгоритму воскресение - 0, меняем на 7
 if(d==0){
     d=w;
     
 }
 d++;
 
}
while(d<w);
 
 
 cout << "\n Пн Вт Ср Чт Пт Сб Вс\n"; //выводим заголовок
 for (int i=1; i<w; i++) cout << "   "; //выводим пробелы до первого числа
 for (int i=1; i<=days; i++, w++) { //выводим календарь
  printf ("%3d", i);
  if (w%7==0) cout << endl; //каждую неделю переводим курсор на след. строку
 
cout<<"\n";
 }}
но не получилось помогите если не сложно
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2013, 19:38     Немного переделать программу
Посмотрите здесь:

Переделать программу немного... C++
C++ нужно немного переделать!!!
C++ меню функции нужно немного переделать
Нужно немного переделать программу нахождения компонент сильной связности в графе C++
Структуры(совсем немного переделать) C++
Надо переделать немного программу C++
Немного переделать код C++
Нужно немного переделать программу: использовать функции и динамическое выделение памяти C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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