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
|
#include <iostream>
using namespace std;
/* Exercises:
* https://github.com/triffon/ip-2021-22/blob/master/practicum/6/week1/%D0%B7%D0%B0%D0%B4%D0%B0%D1%87%D0%B8%20%D0%BF%D1%8A%D1%80%D0%B2%D0%B0%20%D1%81%D0%B5%D0%B4%D0%BC%D0%B8%D1%86%D0%B0.pdf
*/
// Задача 1: Да се въведе число. Да се изведе:
// - 1 ако е различно от 0
// - 0 в противен случай !!
void ex1() {
int a;
cin >> a;
cout << (bool)a;
}
// Задача 2: Да се въведе положително число а . Да се изведе:
// - лицето и обиколката на квадрат със страна а
// - дължината на окръжност с радиус а
// - лицето и обиколката на равностранен триъгълник със страна а
// Приемаме, че sqrt(3) = 1.73
// Пример:
// a=4
// square: p = 16 s = 16
// circle: p = 25.12
// triangle: p = 12 s = 6.92
void ex2() {
int a;
cin >> a;
cout << "Square: " << a * a << " " << a * 4 << endl;
cout << "Circle: " << 3.14 * a * 2 << endl;
cout << "Triangle: " << 1.73 * a * a / 4 << " " << a * 3;
}
// Задача 3: От потребителя се въвежда число. Да се изведе:
// - Единица, ако числото е четно.
// - Нула в противен случай.
void ex3() {
int a;
cin >> a;
cout << !(a % 2);
}
// Задача 4: Да се въведат две числа - а и b
// Да се разменят стойностите им (по три начина, без да се използва функцията swap)
// Пример:
// a=2
// b=9
// 1: 9 2
// 2: 9 2
void ex4() {
int A, B, a, b, temp;
cin >> a >> b;
A = a, B = b;
a += b;
b = a - b;
a -= b;
cout << a << " " << b << endl;
a = A, b = B;
a *= b;
b = a / b;
a /= b;
cout << a << " " << b << endl;
a = A, b = B;
temp = a;
a = b;
b = temp;
cout << a << " " << b << endl;
}
// Задача 5: Да се въведе буква от английската азбука. Програмата връща:
// - Единица, ако буквата е гласна.
// - Нула в противен случай.
// Гласните букви в английската азбука са: a, i, o, u, e
void ex5() {
char letter;
cin >> letter;
cout << (letter == 'a' || letter == 'i' || letter == 'u' || letter == 'e' || letter == 'o'); // when is vowel
}
// Задача 6: Огледално на дадено число наричаме това, съставено от цифрите му в
// обратен ред. Да се въведе четирицифрено число и да се изведе обратното му.
// Пример:
// a = 7121
// mirror a: 1217
void ex6() {
int a;
cin >> a;
cout << a % 10 << (a % 100) / 10 << (a % 1000) / 100 << (a % 10000) / 1000; // 1234 becomes 4321
}
// Задача 7: Напишете потребителски интерфейс, който изисква от потребителя да
// въведе количество от даден продукт (по ваш избор) и цената му. Нека софтуерът
// 1попита за три различни продукта. Накрая изведете сметката на потребителя:
// какъв брой от какво си е поръчал и колко ще му струва.
// Пример:
// Apples: 2 0.6
// Oranges: 1 1.5
// Bananas: 3 0.78
// Your order is: apples for 1.2, oranges for 1.5 and bananas for 2.34.
// Total: 5.04.
void ex7() {
int currQuantity;
double currPrice, aPrice, oPrice, bPrice;
cout << "Apples: ";
cin >> currQuantity >> currPrice;
aPrice = currQuantity * currPrice;
cout << "Oranges: ";
cin >> currQuantity >> currPrice;
oPrice = currQuantity * currPrice;
cout << "Bananas: ";
cin >> currQuantity >> currPrice;
bPrice = currQuantity * currPrice;
cout << "Your order is: apples for " << aPrice << ", oranges for " << oPrice << " and bananas for " << bPrice << endl;
cout << "Total: " << aPrice + oPrice + bPrice;
}
int main() {
ex7();
}
|