Summary Files Commits Branches @commit @diff @stats
path: root / Year 1 / Programming introduction / Practice-11.10.21.cpp
blob: b139e52a317f403dd7c5f7d1b6693d0df7a2b071 (plain) (blame)
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
#include <iostream>

using namespace std;

/* Exercises:
 * https://github.com/triffon/ip-2021-22/blob/master/practicum/6/week1/%D0%94%D0%BE%D0%BF%D1%8A%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D0%BD%D0%B8%20%D0%B7%D0%B0%D0%B4%D0%B0%D1%87%D0%B8.pdf
 */

// Задача 0: Да се изведе на конзолата символа ’+’ без символа да се използва в
// кода на програмата.
void ex0() {
    cout << (char)43;
}

// Задача 1: Да се напише програма, която при подаване на положително число
// извежда сбора на числата от 1 до числото.
// Пример:
// Вход: 5
// Изход: 1 + 2 + 3 + 4 + 5 = 15
void ex1() {
    int a;
    cin >> a;
    cout << a * (1 + a) / 2; // sum of arithmetic sequence, where a0 = 1 and d = 1
}

// Задача 2: Въвежда се число. Програмата изписва 1 ако числото се дели или на 3
// или на 5. (но не и на двете едновременно)
// Пример:
// Вход: 15 –> Изход: 0
// Вход: 3 –> Изход: 1
void ex2() {
    int a;
    cin >> a;
    cout << ((a % 3 == 0) != (a % 5 == 0)); // != is logical XOR
}

// Задача 3*: Да се напише програма която при дадено число определя броя на
// числата които се делят на 3 или на 5 считано от 1 до числото включително. (като
// числото може да се дели и на двете едновременно)
// Пример:
// Вход: 15
// Изход: 7, понеже имаме 3, 5, 6, 9, 10, 12, 15
void ex3() {
    int a;
    cin >> a;
    cout << a / 3 + a / 5 - (a / 5) / 3;
}

// Задача 4*: Да се напише програма която при дадено число определя сумата на
// числата които се делят на 3 считано от 1 до числото.
// Пример:
// Вход: 15
// Изход: 45, понеже имаме 3 + 6 + 9 + 12 + 15
void ex4() {
    int a;
    cin >> a;
    a /= 3;
    cout << (6 + (a - 1) * 3) * a / 2; // sum of arithmetic sequence, where a0 = 3 and d = 3
}

// Building and running in PowerShell:
// g++ .\*.cpp -o out.exe; if($?) { .\out.exe }
int main() {
    ex4();
}