Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 03.03.2019
Сообщений: 21

Календарь, раскрасить субботу и воскресенье красным цветом

18.09.2019, 23:22. Показов 1476. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Гайс, делаю обыкновенный календарь, нужно раскрасить субботу и воскресенье красным и тут возникли проблемы.
Дело в том что цифры которые я вывожу - не константные и то с чем я пытался это осуществить работает только с const, help!!!
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
#include "pch.h"
#include <iostream>
#ifndef _COLORS_
#define _COLORS_
 
/* FOREGROUND */
#define RST  "\x1B[0m"
#define KRED  "\x1B[31m"
#define KGRN  "\x1B[32m"
#define KYEL  "\x1B[33m"
#define KBLU  "\x1B[34m"
#define KMAG  "\x1B[35m"
#define KCYN  "\x1B[36m"
#define KWHT  "\x1B[37m"
 
#define FRED(x) KRED x RST
#define FGRN(x) KGRN x RST
#define FYEL(x) KYEL x RST
#define FBLU(x) KBLU x RST
#define FMAG(x) KMAG x RST
#define FCYN(x) KCYN x RST
#define FWHT(x) KWHT x RST
 
#define BOLD(x) "\x1B[1m" x RST
#define UNDL(x) "\x1B[4m" x RST
 
#endif  /* _COLORS_ */
using namespace std;
 
int main()
{
    int monthNum,DayOfWeak,numberedDay,rep;
    int m[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
    repit:
    cout << "input month " << endl;
    cin >> monthNum;
    cout << "input first DayOfWeak " << endl;
    cin >> DayOfWeak;
    cout << endl;
    numberedDay = 0;
    for (int i=0; i < (monthNum-1); ++i) {
        numberedDay = numberedDay + m[i];
    };
   /* for (int u = 1; u < DayOfWeak; ++u) { cout << "   "; };*/
    for (int i = 0; i < m[monthNum-1]; ++i) {
        
        if ((numberedDay % 7 == 7 - DayOfWeak) || (numberedDay % 7 == 6 - DayOfWeak)) {
            cout << i+1<<" ";
            /*cout << FRED("1");*/
        }
        else {
            /*cout << BOLD(FBLU("2"));*/
            cout << i+1 << " ";
        };
        if ((i+1) / 10 == 0) { cout << " "; };
        if (numberedDay % 7 == 7- DayOfWeak) { cout << endl; };
        numberedDay = numberedDay + 1;
    };
    cout << "repit 1)yes  2)no" << endl;
    cin >> rep;
    if (rep == 1) { goto repit; };
    return 0;
}
Добавлено через 1 час 57 минут
нашел решение, если кому-то надо
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
#include "pch.h"
#include <iostream>
#include <Windows.h>
using namespace std;
enum ConsoleColor {
    Black = 0,
    Blue = 1,
    Green = 2,
    Cyan = 3,
    Red = 4,
    Magenta = 5,
    Brown = 6,
    LightGray = 7,
    DarkGray = 8,
    LightBlue = 9,
    LightGreen = 10,
    LightCyan = 11,
    LightRed = 12,
    LightMagenta = 13,
    Yellow = 14,
    White = 15
};
int main()
{
    int monthNum,DayOfWeak,numberedDay,rep;
    int m[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
    HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
repit:
    SetConsoleTextAttribute(hConsole, (WORD)((Black << 4) | LightGreen));
    cout << "input month " << endl;
    cin >> monthNum;
    cout << "input first DayOfWeak " << endl;
    cin >> DayOfWeak;
    cout << endl;
    numberedDay = 0;
    for (int i=0; i < (monthNum-1); ++i) {
        numberedDay = numberedDay + m[i];
    };
   /* for (int u = 1; u < DayOfWeak; ++u) { cout << "   "; };*/
    for (int i = 0; i < m[monthNum-1]; ++i) {
        
        if ((numberedDay % 7 == 7 - DayOfWeak) || (numberedDay % 7 == 6 - DayOfWeak)) {
            /*cout << i+1<<" ";*/
            SetConsoleTextAttribute(hConsole, (WORD)((Black << 4) | LightRed));
            cout<<i+1 << " ";
            /*cout << FRED("1");*/
        }
        else {
            /*cout << BOLD(FBLU("2"));*/
            SetConsoleTextAttribute(hConsole, (WORD)((Black << 4) | White));
            cout << i + 1 << " ";
        };
        if ((i+1) / 10 == 0) { cout << " "; };
        if (numberedDay % 7 == 7- DayOfWeak) { cout << endl; };
        numberedDay = numberedDay + 1;
    };
    cout << endl;
    SetConsoleTextAttribute(hConsole, (WORD)((Black << 4) | LightGreen));
    cout << "repit 1)yes  2)no" << endl;
    cin >> rep;
    if (rep == 1) { goto repit; };
    return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.09.2019, 23:22
Ответы с готовыми решениями:

Получить сегодняшнее число и вывести красным цветом, если это воскресенье
Должно печататься сегодняшнее число. Если это воскресенье, напечатать красным цветом, иначе - черным. Получение сегодняшнего числа...

Раскрасить в массиве при выводе красным цветом нечетные положительные элементы
1.Ввести двумерный массив произвольной размерности, раскрасить в нем при выводе красным цветом нечетные положительные элементы, синим...

Раскрасить в массиве при выводе красным цветом первый четный элемент
Ввести двумерный массив произвольной размерности, раскрасить в нем при выводе красным цветом первый четный элемент, желтым цветом последний...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.09.2019, 23:22
Помогаю со студенческими работами здесь

Найти сумму четных элементов каждой строки массива и раскрасить красным цветом четные элементы
Заполнить двумерный числовой массив А целыми числами. Найти сумму четных элементов каждой строки массива и раскрасить при выводе красным...

Раскрасить в массиве красным цветом нечетные положительные элементы, синим – нечетные отрицательные
Ввести двумерный массив произвольной размерности, раскрасить в нем при выводе красным цветом нечетные положительные элементы, синим цветом ...

Каким компонентом сделать TCalendar, чтобы блокировать субботу и воскресенье (Android)?
Каким компонентном можно сделать календарь, что б можно было блокировать субботу и воскресение для выбора?

Календарь понедельник-воскресенье
Привет помогите сделать чтобы в C# Windows Form календарь имел выбор начинатся с понедельника или воскресенья в monthCalendar1

Вывести матрицу: 1 красным цветом, 0 синим цветом
1 заменить на 2


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru