Angelika Kvachenok

  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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
# # Дано температуру вивести агретаний стан (<0 - лід, 0 - все складно, 1-99 - вода, 100+ - газ)
def temperature_func (temperature_f):
if temperature_f < 0:
type = 'ice'
elif temperature_f == 0:
type = 'difficult to say'
elif temperature_f > 0 and temperature_f <99:
type = 'water'
else:
type='gas'
return type
# # перепроверка
def check_input_type (input_f): # как правильно сделать перепроверку значений которые вводятся?
if input_f.isnumeric():
type = 'num'
else:
type = 'str'
return type
def main():
while True:
try:
temperature = int(raw_input('Enter the temperature: '))
except:
print 'The temperature must be numeric'
else:
break
type = temperature_func(temperature)
print 'Type is ', type
# Дано 3 числа, вевести їх в порядку зростання
while True:
try:
num1 = int(raw_input('Enter the first value: '))
except:
print 'The value must be numeric'
else:
break
while True:
try:
num2 = int(raw_input('Enter the second value: '))
except:
print 'The value must be numeric'
else:
break
while True:
try:
num3 = int(raw_input('Enter the third value: '))
except:
print 'The value must be numeric'
else:
break
array_nums =[]
array_nums.append(num1)
array_nums.append(num2)
array_nums.append(num3)
array_nums.sort()
print 'Sorted array: ', array_nums
# Дано рядок, вивести його довжину
string_l = len(str(raw_input('Enter the string: ')))
print 'String len: ', string_l
# Дано рядок з більш ніж 10 символів, вивести його без перших 2 і останніх 3х символів
while True:
try:
string_10 = raw_input('Enter the string (10+ symbols) value: ') ##and len(string_10)>9
except:
print 'The string must contains more than 9 symbols'
else:
break
print 'String without first 2 and last 3 symbols: ', string_10[2:-3]
# Дано рядок, замінити всі літери І на 1, а О на 0
string_before_repl = raw_input('Enter the string with I or O: ')
string_after_repl_I = string_before_repl.replace("I", "1")
string_after_repl_O = string_after_repl_I.replace("O", "0")
print 'String without "I" and "O": ', string_after_repl_O
# Дано дані (ім'я та вік) побудувати привітання за шаблоном
while True:
try:
age = int(raw_input('Enter AGE: ')) ##and len(string_10)>9
except:
print 'The age must by numeric'
else:
break
name = raw_input('Enter name: ')
print 'Dear ', name, ' we are happy to congratulate you with your ', age, ' birtday '
#дано список чисел - сформувати словник де кожному числу відповідає кілікість раз це число зустрічається у списку
array_1 = [6, 5, 3, 5, 9, 5, 4, 4, 3, 2, 7, 3, 6, 7, 2]
array_1_num = {}
array_1_all_indexs={}
array_1_max_index = {}
array_1_len = len(array_1)
for i in range(0, array_1_len-1):
#кілікість раз це число зустрічається у списку
array_1_num_count=array_1.count(array_1[i])
array_1_num.update({array_1[i]:array_1_num_count})
#список індексів на яких воно зустрічається
array_1_index_pos_list = []
array_1_index_pos=0
while True:
try:
array_1_index_pos = array_1.index(array_1[i], array_1_index_pos)
array_1_index_pos_list.append(array_1_index_pos)
array_1_index_pos += 1
except:
break
return array_1_index_pos_list
array_1_all_indexs.update({array_1[i]: array_1_index_pos_list})
array_1_max_index.update({array_1[i]: max(array_1_index_pos_list)})
print 'Array: ', array_1, ' New array (how many times each element appears): ', array_1_num
# - дано список чисел - сформувати словник де кожному числу відповідає останній індекс входження такого числа
print 'Array: ', array_1, ' New array (each element and indexes): ', array_1_all_indexs
# - дано список чисел - сформувати словник де кожному числу відповідає список індексів на яких воно зустрічається
print 'Array: ', array_1, ' New array (each element and max index): ', array_1_max_index
# - дано список рядків - сформувати список словників де кожен словник - це символ - кількість входжень
array_2=["abracadabra", "somethingnewforus", "testandtestagain"]
array_2_num = []
array_2_len = len(array_2)
for i in range(0, array_2_len):
sub_array_2_array_2_num = {}
array_2_num.append(sub_array_2_array_2_num)
sub_array_2=list(array_2[i])
sub_array_2_len = len(sub_array_2)
for j in range(0, sub_array_2_len):
# кілікість раз це число зустрічається у списку
sub_array_2_count = sub_array_2.count(sub_array_2[j])
sub_array_2_array_2_num.update({sub_array_2[j]: sub_array_2_count})
#print 'Array sub: ', sub_array_2_array_2_num
print 'Array: ', array_2, ' New array (how many times each element appears): ', array_2_num
# - дано два словника ключ-число - додати ці словники (якщо ключ зустрічається в обох - то значення додати, інакше - ключ-значення)
dictionary_3={2: 8, 5: 11, 7: 3, 1: 5, 45: 14}
dictionary_4={3: 13, 5: 10, 8: 2, 1: 3, 45: 8, 4: 14}
print 'Dictionary 1: ', dictionary_3, ' Dictionary 2: ', dictionary_4
dictionary=[]
dictionary.append(dictionary_3)
dictionary.append(dictionary_4)
dictionary_sum = {}
for d in dictionary:
for k in d.keys():
dictionary_sum[k] = dictionary_sum.get(k, 0) + d[k]
print 'Sum of dictionaries: ', dictionary_sum
# - дано два списки слів - повернути список слів, які зустрічаються в першому списку частіше ніж у другому
array_20= ["q", "qq", "w", "w", "ww", "as"]
array_21= ["a", "q", "qq", "qq", "ww"]
dictionary_5={}
dictionary_6 = {}
array_22 =[]
for j in range(0, len(array_20)):
array_20_count = array_20.count(array_20[j])
dictionary_5.update({array_20[j]: array_20_count})
for j in range(0, len(array_21)):
array_21_count = array_21.count(array_21[j])
dictionary_6.update({array_21[j]: array_21_count})
for d in dictionary_5:
array_20_elem= dictionary_5.get(d)
array_21_elem=dictionary_6.get(d,0)
if array_20_elem > array_21_elem:
array_22.append(d)
print 'List 1: ',array_20, ' List 2:',array_21,' A list of words that occur in the first list more often than in the second: ', array_22
# - знайти кількість елементів в масиві
array_8= [1, 3, 5, 6]
print 'Array: ', array_8, 'Array number of elements: ', len(array_8)
# - знайти кількість елементів в масиві рівних даному
array_9 = [1, 2, 1, 2, 1, 3]
element_9 = 2
element_9_num=0
for i in range (0, len(array_9)-1):
if array_9[i] == element_9:
element_9_num+=1
print 'Array: ', array_9, ' Element: ', element_9, ' Number of element ', element_9, ' in the array:', element_9_num
# - дано список чисел - знайти суму всіх елементів
array_10 = [1, 3, 5, 6, 8]
print 'Array: ', array_10, ' Sum of elements: ', sum(array_10)
# - дано список чисел - знайти максимум елементів
array_11 =[1, 3, 5, 6, 8]
print 'Array: ', array_11, ' Max of elements: ', max(array_11)
# - дано список чисел - знайти середнє значення елементів масивів
print 'Array: ', array_11, ' Mean of elements: ', sum(array_11)/len(array_11)
# - дано список чисел - сформувати рядок де всі ці числа записані через прогалену
string_from_array=''
array_12=[]
array_11_mul_2=[]
multiples_a_11_7 = 'false'
negative_element_array_11 ='false'
for i in range (0, len(array_11)):
string_from_array=string_from_array+str(array_11[i])
if i%2 == 0:
elem=array_11[i]*2
array_12.append(elem)
else:
elem = array_11[i]*3
array_12.append(elem)
if array_11[i]%7 == 0:
multiples_a_11_7= 'true'
if array_11[i]%2 == 0:
array_11_mul_2.append(array_11[i])
if array_11[i] < 0:
negative_element_array_11= 'true'
print 'Array: ', array_11, ' String from the elements: ', string_from_array
# - дано список чисел - сформувати список де елементи на парних позиціях перемножені на 2 а на не парних на 3
print 'Array: ', array_11, ' Elements on paired units multiplied by 2 and not on paired units by 3', array_12
# - дано список чисел - перевірити чи всі елементи кратні 7
array_12=[7, 0, 14, 210]
multiples_a_12_7 = 'false'
for i in range(0, len(array_12)):
if array_12[i]%7 == 0:
multiples_a_12_7= 'true'
print 'Array: ', array_11, ' Elements multiplied by 7?:', multiples_a_11_7
print 'Array: ', array_12, ' Elements multiplied by 7?:', multiples_a_12_7
# - дано спиоск чисел - перевірити чи є в ньому від'ємний елемент
array_13=[1, 3, -5, 6, 8]
negative_element_array_13='false'
for i in range(0, len(array_13) - 1):
if array_13[i] < 0:
negative_element_array_13 = 'true'
print 'Array: ', array_11, ' Is negative element in the array:', negative_element_array_11
print 'Array: ', array_13, ' Is negative element in the array::', negative_element_array_13
# - дано список чисел - сформувати список з попереднього де видалені всі парні числа
print 'Array: ', array_11, ' Elements that are multiples of 2:', array_11_mul_2
# - дано текст (рядок) - розбити його на слова
string_1= 'quick brown fox jumps over the lazy dog'
string_1_splited=[]
string_1_splited = string_1.split(' ')
print 'Taxt: ', string_1, ' Splited text:', string_1_splited
# - дано список - повернути його частину починаючи з 5того елементу
array_14 =[1, 3, 5, 6, 8, 7, 12, 1111, 19]
print 'Array:', array_14, 'Array from the 5th element: ', array_14[5:]
# - дано список - повернути його частипу без 1шого і останнього елментів словники (dict)
print 'Array:', array_14, 'Array without 1th and last element: ', array_14[1:-1]
main()