Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
 Аватар для 6elka1703
91 / 85 / 27
Регистрация: 29.10.2016
Сообщений: 928

Работа с массивами в numpy

29.01.2021, 23:11. Показов 2845. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, стоит такая задача:
Вводятся два натуральных числа x,y. Необходимо сгенерировать две случайные последовательности (а0,...an-1). Нужно посчитать количество индексов i, для которых выполняется условие bi - ai = x и bi > y. Задание выполняется без использования циклов.
Массивы я сформировал, но не понимаю как без циклов подсчитать количество индексов по условию. Подскажет кто?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.01.2021, 23:11
Ответы с готовыми решениями:

Работа со списками и массивами numpy
Доброго времени суток! Имеется матрица, представленная в виде списка списков и двумерный массив, хранящий эту же матрицу. Необходимо:...

Задания по операциям с массивами Numpy
Используя срезы, написать команду, которая: 1. показывает элементы, оба индекса которых четные числа; 2. показывает элементы, оба...

Как ускорить работу с массивами numpy
При работе с большими файлами, в моём случае 10к строк, очень долго обрабатывает файл, как можно ускорить сие? Скрипт упорядочивает...

11
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
29.01.2021, 23:26
Лучший ответ Сообщение было отмечено 6elka1703 как решение

Решение

Не по теме:

Цитата Сообщение от 6elka1703 Посмотреть сообщение
Задание выполняется без использования циклов.
Маразм крепчал...


Цитата Сообщение от 6elka1703 Посмотреть сообщение
как без циклов подсчитать количество индексов по условию.
Python
1
result = sum(map(lambda z: z[1] - z[0] == x and z[1] > y, zip(a, b)))
1
Эксперт Python
8849 / 4501 / 1864
Регистрация: 27.03.2020
Сообщений: 7,316
29.01.2021, 23:37
6elka1703,
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import numpy as np
x, y = map(int,input().split())
n = int(input())
 
a = np.random.randint(1,15,n)
b = np.random.randint(1,15,n)
print(a)
print(b)
 
cond_1 = b - a == x 
cond_2 = b > y
 
print(len(b[cond_1]))
print(len(b[cond_2]))
1
5515 / 2868 / 571
Регистрация: 07.11.2019
Сообщений: 4,758
31.01.2021, 21:49
Цитата Сообщение от Arsegg Посмотреть сообщение
Маразм крепчал...
Почему? Циклы в числодробилках типа numpy, matlab, octave есть зло, которое надо избегать
Если надо быстрее, то последние строки можно заменить на:
Python
1
2
print(np.count_nonzero(cond1))
print(np.count_nonzero(cond2))
2
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
01.02.2021, 03:43
Цитата Сообщение от u235 Посмотреть сообщение
Циклы в числодробилках типа numpy, matlab, octave есть зло, которое надо избегать
Если дело в скорости работы программы, так пишите на Ассемблере. Зачем вам тогда Питон?
Уж выбирайте что-нибудь одно, скорость работы программы или скорость написания программы и ее читабельность.
Зло, это извращения, когда сложно понять, что делает программа.
0
5515 / 2868 / 571
Регистрация: 07.11.2019
Сообщений: 4,758
01.02.2021, 06:35
Зачем же выбирать? Можно писать и короткий, и читаемый, и быстрый код.
По типу
Python
1
C=np.dot(A,B)
А можно медленный и более длинный на чистом Python используя for.
Или быстрый, но большой и плохочитаемый код на Ассемблере.
Программа Gdez, разве плохо читаема? Нет. Быстрая - безусловно.
0
Эксперт Python
 Аватар для dondublon
4652 / 2072 / 366
Регистрация: 17.03.2012
Сообщений: 10,182
Записей в блоге: 6
01.02.2021, 09:49
Цитата Сообщение от Viktorrus Посмотреть сообщение
Если дело в скорости работы программы, так пишите на Ассемблере. Зачем вам тогда Питон?
На ассемблере писать - долго, сложно и неудобно. На numpy - одно удовольствие, и получаем сишную скорость в питоне.
1
01.02.2021, 11:35

Не по теме:

Цитата Сообщение от u235 Посмотреть сообщение
А можно медленный и более длинный на чистом Python используя for.
А можно писать быстрый и читаемый код на Java/Scala. Особо критичный к скорости код - на C/C++.

P. S. Гвозди можно забивать не только молотком...

0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
01.02.2021, 12:06
Цитата Сообщение от dondublon Посмотреть сообщение
получаем сишную скорость в питоне.
Cи медленнее Ассемблера, хотя и не на много. По этой причине драйверы пишут на ассемблере, а не на Си. И по этой же причине Windows первоначально написанный на Си, в последних версиях переписан на Ассемблере.
0
Эксперт Python
 Аватар для dondublon
4652 / 2072 / 366
Регистрация: 17.03.2012
Сообщений: 10,182
Записей в блоге: 6
01.02.2021, 14:56
Цитата Сообщение от Viktorrus Посмотреть сообщение
Cи медленнее Ассемблера, хотя и не на много.
Кэп?
Хотите скорость ассемблера - пишите на ассемблере. Скорость и удобство разработки тоже имеют значение. Потому и появился С после ассемблера, а Питон и прочая высокоуровневость - после С.
Цитата Сообщение от Viktorrus Посмотреть сообщение
По этой причине драйверы пишут на ассемблере, а не на Си.
Ничего подобного. По крайней мере, виндовый api для драйверов - на С. Ассемблерные вставки, конечно, допустимы, но необязательны.
Цитата Сообщение от Viktorrus Посмотреть сообщение
И по этой же причине Windows первоначально написанный на Си, в последних версиях переписан на Ассемблере.
Это что-то новенькое. Звучит сомнительно.
0
01.02.2021, 15:13

Не по теме:

Цитата Сообщение от dondublon Посмотреть сообщение
Это что-то новенькое. Звучит сомнительно.
Соглашусь. Ничем не подкреплено...

0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
02.02.2021, 00:06
Arsegg, Почитал сейчас в интернете, есть мнение , что ядро windows написано на смеси С/С++ и Ассемблере. А графическая часть на С++.
Но вот интересная информация, что Майкрософт собирается переписать windows на новом языке Rust, так как при использовании С/С++ есть проблемы.
https://www.cnews.ru/news/top/... st_windows
Насколько это достоверная информация, пока не понятно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.02.2021, 00:06
Помогаю со студенческими работами здесь

Операции с массивами без использования NumPy
Вопрос такой, с NumPy я смогу это сделать, но а если нету этого модуля на пк, то как решить подобную задачу? Именно сами операции над...

Как, используя numpy, создать массив с массивами
Мне нужно, используя numpy, записывать массивы в массив, не важно с какими значениями, так как они потом все равно изменятся. Я знаю, что...

Работа с массивами: распределить элементы одного массива между другими массивами
Доброго времени суток. Не могу понять, что не так с кодом. #include <iostream> #include <clocale> using namespace std; //...

Работа с динамическими массивами. Работа с двумерными массивами
Выполнить все задания предыдущей лабораторной работы, используя ТОЛЬКО динамические массивы. Создать программу, вводящую матрицу размера...

Работа с numpy
Необходимо решить в google colab 1) Найдите в интернете температурные показатели за любой месяц (например, январь 2020 года) ...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru