Найти Π² Π”Π·Π΅Π½Π΅
10,5 тыс подписчиков

πŸ–₯ Найти ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ элСмСнт Π² массивС с ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ значСниями


πŸ“Œ ЗАДАЧА
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ массив случайными ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ числами Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС числа ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ Π±Ρ‹Π»ΠΈ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π² массивС Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²ΡƒΡ… Ρ€Π°Π²Π½Ρ‹Ρ… чисСл, Π½ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Π²ΡƒΡ… Ρ€Π°Π²Π½Ρ‹Ρ… ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ. Π’ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠΌ массивС Π½Π°ΠΉΡ‚ΠΈ наибольшСС ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ число.

ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ числа ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ΠΌ Π² массив Π½Π°Π΄ΠΎ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ с Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌΠΈ значСниями всСх чисСл, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π² массив. Если хотя Π±Ρ‹ Π² ΠΎΠ΄Π½ΠΎΠΌ сравнСнии числа совпадут, Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ΅ число Π½Π΅ слСдуСт Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π² массив. Если ΠΆΠ΅ совпадСний Π½Π΅ Π±Ρ‹Π»ΠΎ, Ρ‚ΠΎ число добавляСтся массив ΠΏΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌΡƒ индСксу, послС Ρ‡Π΅Π³ΠΎ индСкс увСличиваСтся Π½Π° 1.

Поиск ΠΆΠ΅ максимума ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ отличаСтся ΠΎΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ лишь Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹Π΅ значСния элСмСнтов массива.

РСшСниС:

from random import random<br>
N = 15<br>
m = int(random() * 40) - 20<br>
arr = [m]<br>
i = 1<br>
while i < N:<br>
m = int(random() * 40) - 20<br>
f = 1<br>
for j in arr:<br>
if abs(j) == abs(m):<br>
f = 0<br>
break<br>
if f == 1:<br>
arr.append(m)<br>
i += 1<br>
print(arr)<br>
j = 0<br>
for i in range(1, 15):<br>
if abs(arr[i]) > abs(arr[j]):<br>
j = i<br>
print('ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ %d-ΠΉ элСмСнт Ρ€Π°Π²Π΅Π½ %d' % (j,arr[j]))<br>

ΠŸΠΈΡˆΠΈΡ‚Π΅ своС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΡΡ…πŸ‘‡

1 ΠΌΠΈΠ½ΡƒΡ‚Π°
114 Ρ‡ΠΈΡ‚Π°Π»ΠΈ