0 / 0 / 0
Регистрация: 15.11.2021
Сообщений: 15

Вывести на экран серии элементов, состоящих из знакочередующихся чисел

07.12.2021, 09:59. Показов 2889. Ответов 2

Студворк — интернет-сервис помощи студентам
Заполните список из N элементов случайными целыми числами, находящимися в интервале от -30 до 50. Выведите на экран компьютера созданный список и определите, есть ли в нем серии элементов, состоящих из знакочередующихся чисел на экран количество таких серий.

Код:
Python
1
2
3
4
from random import randint
a = [randint (-30,50)
    for i in range(50)]
print (a)
Как вывести знакочередующиеся числа (к примеру -1, 1 и тд.), подскажите пжалуйста.

Заранее спасибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.12.2021, 09:59
Ответы с готовыми решениями:

Выведите на экран список и определите, есть ли в нем серии элементов, состоящих из знакочередующихся чисел
12.           Разработайте программу, заполняющую список из N элементов случайными целыми числами, находящимися в интервале от -30 до 50....

определить в массиве серии элементов, состоящих из знакочередующихся чисел
Определить есть ли в заданном массиве серии элементов, состоящих из знакочередующихся чисел. Если есть, то вывести на экран количество...

Определить, есть ли в массиве серии элементов, состоящих из знакочередующихся чисел
Определить есть ли в заданном массиве серии элементов, состоящих из знакочередующихся чисел. Если есть, то вывести на экран количество...

2
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
07.12.2021, 11:47
Лучший ответ Сообщение было отмечено Mogilev как решение

Решение

Mogilev,
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from random import randint
a = [randint (-30,50) for i in range(50)]
print (a)
 
cnt, tmp, res = 0, [], []
for i in range(len(a) - 1):
    if a[i]*a[i+1]<0:
        tmp.append(a[i])
    else:
        if len(tmp):
            res.append(tmp + [a[i]])
            cnt += 1
            tmp = []
if len(tmp):
    res.append(tmp + [a[i+1]])
    cnt += 1
    
print(cnt)
for elem in res:
    print(elem)
1
16 / 9 / 7
Регистрация: 16.09.2013
Сообщений: 41
07.12.2021, 12:15
Лучший ответ Сообщение было отмечено Mogilev как решение

Решение

Если вы не ищите какое-то изящное решение, то предлагаю такое, самое первое, что приходит на ум:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from random import randint
 
a = [randint (-30, 50) for i in range(50)]
print(a)
 
count = 0
 
for x, y in enumerate(a):
    if x+2 > len(a):
        break
 
    if y * -1 == a[x + 1]:
        count += 1
 
print(count)
Только такой вариант будет искать пары. Т.е. [-1, 1, -1] будет идти за две серии, а [-1, 1, -1, 1]. Можно вот так наколхозить, чтобы этого не было:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from random import randint
 
a = [randint(-30, 50) for i in range(50)]
 
print(a)
 
count = 0
series = False
 
for x, y in enumerate(a):
    if x + 2 > len(a):
        break
 
    if y * -1 == a[x + 1]:
        if series:
            continue
        else:
            count += 1
            series = True
    else:
        series = False
 
print(count)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.12.2021, 12:15
Помогаю со студенческими работами здесь

Создать массив случайных чисел, вывести его и найти знакочередующихся серии
Разработайте программу, заполняющую список из N элементов случайными целыми числами, находящимися в интервале от -30 до 50. Выведите на...

Вывести на экран ряд чисел Фибоначи, состоящих их n элементов
Вывести на экран ряд чисел Фибоначи, состоящих их n элементов.Числа Фибоначи-этоэлементы числовой последовательности...

Сформировать и вывести на экран массив, состоящих из уникальных элементов исходного массива
Помогите, пожалуйста, исправить именно мой код. Задача: Задан массив из n случайных целых чисел (число n вводится с клавиатуры, его...

Дано N множеств, состоящих из целых чисел. Вывести на экран элементы, принадлежащие всем множествам
Здравствуйте помогите пожалуйста решить) Цель: Решыть программу на языке Turbo Pascal для решения задачи. Задание:Данная N...

Даны N множеств, состоящих из целых чисел. Вывести на экран элементы, принадлежащие всем множествам
Здравствуйте помогите пожалуйста решить) Цель: Решыть программу на языке Turbo Pascal для решения задачи. Задание:Данная N...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru