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

Си плюс плюс доработать программу - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
SemenSilovatov
Сообщений: n/a
02.10.2012, 15:27     Си плюс плюс доработать программу #1
программа календарь не получается сделать ввод данных так как нужно:
Введите год или месяц и год: июНЬ 2099
[Вывод календаря]

Введите год или месяц и год: 2109
[Вывод календаря]

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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <cstdlib> 
 
using namespace std;
int Kalendar();
int copy();
int main()
{
    
    
    cout << "Please write Month and Year: ";
    Kalendar();
    
 
    cout << "\n\n\n\n";
    return 0;
}
 
 
int Kalendar()
{
    int year, firstDayOfWeek, dayInMonth;
    
    copy();
    firstDayOfWeek = ( 2 + (year - 1901) + (year - 1901) / 4);
    firstDayOfWeek = 7 -  firstDayOfWeek % 7;
    for(int i = 1; i <= 12; i++)
    {
        switch(i)
        {   
        case 1:
            cout << "\t\t\t\tJanuary" << endl;
            dayInMonth = 31;
            break;
 
        case 2:
            cout << "\t\t\t\tFebruary" << endl;
            dayInMonth = 29;
            break;
 
        case 3:
            cout << "\t\t\t\tMarch" << endl;
            dayInMonth = 31;
            break;
 
        case 4:
            cout << "\t\t\t\tApril" << endl;
            dayInMonth = 30;
            break;
 
        case 5:
            cout << "\t\t\t\tMay" << endl;
            dayInMonth = 31;
            break;
 
 
        case 6:
            cout << "\t\t\t\tJune" << endl;
            dayInMonth = 30;
            break;
 
        case 7:
            cout << "\t\t\t\tJuly" << endl;
            dayInMonth = 31;
            break;
        case 8:
            cout << "\t\t\t\tAugust" << endl;
            dayInMonth = 31;
            break;
 
        case 9:
            cout << "\t\t\t\tSeptember" << endl;
            dayInMonth = 30;
            break;
 
        case 10:
            cout << "\t\t\t\tOktober" << endl;
            dayInMonth = 31;
            break;
 
        case 11:
            cout << "\t\t\t\tNovember" << endl;
            dayInMonth = 30;
            break;
 
        case 12:
            cout << "\t\t\t\tDecember" << endl;
            dayInMonth = 31;
            break;
        }
 
        cout << "Mo\tTu\tWe\tTh\tFr\tSa\tSu" << endl;
 
        for(int k = 7 - firstDayOfWeek;  k < 6; k++)
 
        {   
 
            cout << "\t";
 
        }
 
        for(int j = 1; j <= dayInMonth; j++)
        {
            cout << j << "\t";
            if(firstDayOfWeek % 7 == 0)
            {
 
                cout << endl;
                firstDayOfWeek = 0;
            }
            firstDayOfWeek++;
        }
        cout << endl;
        
    }
 
    return 0;
}
 
int copy()// начал пробовать делать ввод через гетлайн, копирую часть строки до пробела а дальше не знаю что делать
{   int i, j;
    const int sizeString = 256;
    char string1[sizeString];
    char string2[sizeString];
    char string3[sizeString];
    cin.getline(string1, sizeString, '\n');
    while((string2[i] = string1[i]) !=' ')
    {
        i++;
    
    }
 
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.10.2012, 15:27     Си плюс плюс доработать программу
Посмотрите здесь:

Доработать программу C++
В целочисленном массиве найти число чередований знака, то есть число переходов с минуса на плюс или с плюса на минус. C++
Обработка матрицы. Плюс надо сделать программу с указателем C++
Создать функцию, возвращающую знак числа – символ ‘+’ (плюс) или ‘–‘ (минус) C++
Перегрузка оператора плюс, объединение двух массивов C++
В массиве Z (m) найти количество дежурств знака, то есть количество переходов с минуса на плюс и наоборот. Например, в последовательности 0, - 2, 0 - C++
Хорошо ли использовать унарный плюс вместо функции получения модуля? Если нет, то почему? C++
C++ Сгенерировать файл и заменить часть встречающихся символов на плюс

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

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

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