Как найти корень в массиве

numpy.sqrt(x, /, out=None, *, where=True, casting=’same_kind’, order=’K’, dtype=None, subok=True[, signature, extobj]) = <ufunc ‘sqrt’>#

Return the non-negative square-root of an array, element-wise.

Parameters:
xarray_like

The values whose square-roots are required.

outndarray, None, or tuple of ndarray and None, optional

A location into which the result is stored. If provided, it must have
a shape that the inputs broadcast to. If not provided or None,
a freshly-allocated array is returned. A tuple (possible only as a
keyword argument) must have length equal to the number of outputs.

wherearray_like, optional

This condition is broadcast over the input. At locations where the
condition is True, the out array will be set to the ufunc result.
Elsewhere, the out array will retain its original value.
Note that if an uninitialized out array is created via the default
out=None, locations within it where the condition is False will
remain uninitialized.

**kwargs

For other keyword-only arguments, see the
ufunc docs.

Returns:
yndarray

An array of the same shape as x, containing the positive
square-root of each element in x. If any element in x is
complex, a complex array is returned (and the square-roots of
negative reals are calculated). If all of the elements in x
are real, so is y, with negative elements returning nan.
If out was provided, y is a reference to it.
This is a scalar if x is a scalar.

See also

emath.sqrt

A version which returns complex numbers when given negative reals.

Note

0.0 and -0.0 are handled differently for complex inputs.

Notes

sqrt has–consistent with common convention–as its branch cut the
real “interval” [-inf, 0), and is continuous from above on it.
A branch cut is a curve in the complex plane across which a given
complex function fails to be continuous.

Examples

>>> np.sqrt([1,4,9])
array([ 1.,  2.,  3.])
>>> np.sqrt([4, -1, -3+4J])
array([ 2.+0.j,  0.+1.j,  1.+2.j])
>>> np.sqrt([4, -1, np.inf])
array([ 2., nan, inf])

Чтобы найти квадратный корень из списка чисел, вы можете использовать функцию numpy.sqrt() в Python.

Функция sqrt() принимает массив (или список) numpy, вычисляет квадратный корень из элементов в списке и возвращает массив с результатом.

Синтаксис

Синтаксис функции:

output = numpy.sqrt([array_like])

Предоставьте sqrt() массив, подобный аргументу, и он вернет ndarray.

Пример 1: из списка чисел

В этом примере мы инициализируем список чисел и найдем квадратный корень из этих чисел.

import numpy as np

#initialize a list
listA = [4, 16, 9, 1, 25, 49]

#find square root of items in the list
output = np.sqrt(listA)

print(output)

Вывод:

[2. 4. 3. 1. 5. 7.]

Мы предоставили точные квадраты в списке, следовательно, мы получили их квадратные корни без десятичного значения.

Пример 2

В этой программе мы предоставим числа, не являющиеся точными квадратами, и найдем их квадратный корень.

import numpy as np

#initialize a list
listA = [2, 3, 5]

#find square root of items in the list
output = np.sqrt(listA)

print(output)

Вывод:

[1.41421356 1.73205081 2.23606798]

Пример 3: нахождение из комплексных чисел

Вы также можете предоставить комплексные числа в качестве элементов списка для вычисления их квадратных корней.

import numpy as np

#initialize a list
listA = [4+1j, 9+16j]

#find square root of items in the list
output = np.sqrt(listA)

print(output)

Вывод:

[2.01532946+0.24809839j 3.69848346+2.16304875j]

Пример 4: из отрицательных чисел

В этом примере мы предоставим некоторые отрицательные числа, sqrt() выдает RuntimeWarning – просто предупреждение. И возвращает nan (не число) для отрицательного элемента в списке.

import numpy as np

#initialize a list
listA = [-4, 9]

#find square root of items in the list
output = np.sqrt(listA)

print(output)

Вывод:

[nan  3.]

This div height required for enabling the sticky sidebar

Hawaiian pilot

3 / 3 / 0

Регистрация: 18.05.2021

Сообщений: 93

1

Нахождения квадратного корня каждого числа из списка

30.09.2021, 19:22. Показов 6245. Ответов 16

Метки math, sqrt (Все метки)


Студворк — интернет-сервис помощи студентам

Помогите пожалуйста понять и исправить ошибку.
Задача: Импортируйте модуль math и воспользуйтесь оттуда функцией sqrt для нахождения квадратного корня каждого числа из списка.
Мой вариант дает ошибку » must be real number, not str»

Python
1
2
3
4
5
6
7
8
9
10
11
 #import math
from math import sqrt  # Импортируем из модуля math функцию sqrt
a = [1, 2, 3, -5, -4, -2, 4]                                   # создаем глобальную переменную а с произвольным списком
def value(a):
  x = 0
  for i in range(-10, 10):
    x = sqrt(str(a))
  return (int('Квадратный корень равен: ', x))
  print('Квадратный корень равен: ', x)
 
value(a)



0



Val Rubis

306 / 187 / 97

Регистрация: 01.05.2014

Сообщений: 517

30.09.2021, 20:06

2

Корень извлекается из числа, а у вас список:

Python
1
x = sqrt(str(a))

Добавлено через 11 минут
В рамках действительных чисел корень из отрицательного числа извлечь нельзя.

Python
1
2
3
4
5
6
7
def v(x):
    for i in range(len(x)):
        x[i] = sqrt(x[i])
    return x
 
 
print(v(a))



0



4383 / 2492 / 526

Регистрация: 07.11.2019

Сообщений: 4,137

30.09.2021, 21:05

3

Hawaiian pilot, вот и спросите себя, ЗАЧЕМ??? вы написали в 7 строке три буквы s, t и r???



0



eaa

Status 418

Эксперт Python

3854 / 2134 / 571

Регистрация: 26.11.2017

Сообщений: 5,004

Записей в блоге: 2

30.09.2021, 21:05

4

Python
1
2
3
4
from math import sqrt
a = [1, 2, 3, 4, 5, 6]
*res, = map(sqrt, a)
print(res)



2



3 / 3 / 0

Регистрация: 18.05.2021

Сообщений: 93

30.09.2021, 21:34

 [ТС]

5

Цитата
Сообщение от Val Rubis
Посмотреть сообщение

Корень извлекается из числа, а у вас список:

это я вижу.
список приплыл из предыдущей задачи
Val Rubis, ваш код не сработал тоже(
u235, ответ простой — когда у новичка что то не идет, идут в ход 33 способа и прилепить можно жопу полярной совы на глобус. бывает, рандомно попадаю )
eaa, спасибо, сработало. Но что такое *res, ?



0



1182 / 758 / 277

Регистрация: 05.09.2021

Сообщений: 1,772

30.09.2021, 21:39

6

Hawaiian pilot, это магия.

Добавлено через 3 минуты
Hawaiian pilot, только она тут не нужна правда.



1



3 / 3 / 0

Регистрация: 18.05.2021

Сообщений: 93

30.09.2021, 21:40

 [ТС]

7

а, поняла, распаковка.
но все таки, как в range по одному и с подписью сделать?



0



enx

1182 / 758 / 277

Регистрация: 05.09.2021

Сообщений: 1,772

30.09.2021, 21:45

8

Лучший ответ Сообщение было отмечено Hawaiian pilot как решение

Решение

Hawaiian pilot, и опять через def? зачем….

Добавлено через 3 минуты
Можно так:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
from math import sqrt
 
 
def modify_my_int(x: int) -> str:
    '''
    тут сокращение записи до 2 символов после точки
    '''
    return f'Квадратный корень от {x} равен: {sqrt(x):.2f}' if x >= 0 else 'Отрицательное цисло'
 
 
a = [1, 2, 3, -5, -4, -2, 4]
for i in range(len(a)):
    print(modify_my_int(a[i]))



1



Hawaiian pilot

3 / 3 / 0

Регистрация: 18.05.2021

Сообщений: 93

30.09.2021, 21:47

 [ТС]

9

enx, задачи по def
но и в таком варианте не запускается код тоже:

Python
1
2
3
4
5
6
7
8
9
10
from math import sqrt                             # Импортируем из модуля math функцию sqrt
a = 1, 2, 3, 4, 5, 6   
 #def value(a):
  # x = 0
  for i in range(len(a)):
    x = sqrt(a)
  return (int('Квадратный корень равен: ', x))
  print('Квадратный корень равен: ', x)
 
value(a)



0



4383 / 2492 / 526

Регистрация: 07.11.2019

Сообщений: 4,137

30.09.2021, 21:53

10

Hawaiian pilot, потому что методом тыка вы никогда ничему толком не научитесь. Вы не знаете для чего отступы и что return без def не бывает. Почитайте учебник, разберите примеры.



0



1182 / 758 / 277

Регистрация: 05.09.2021

Сообщений: 1,772

30.09.2021, 21:57

11

Hawaiian pilot, бросьте эти задачи, и этот учебник вот прямо сейчас, с разбегу и в костер. Кинул вам вчера ссылки, пройдите по ним.



0



3 / 3 / 0

Регистрация: 18.05.2021

Сообщений: 93

30.09.2021, 22:02

 [ТС]

12

Цитата
Сообщение от u235
Посмотреть сообщение

return без def не бывает

бывает
ну что поделать, учусь я)
читаю и разбираю. и кучу примеров и видео. они не бывают одинаковыми, кроме «привет мир».
я задаю на форум вопрос, когда уже край.
и да, мне тяжело.
и возможно я ходячее пособие, кому не нужно в ИТ.
но я хотя бы пытаюсь что то уловить, а не как 90% студняка кидают задачу тупо — решайте смерды.
()понять и простить



0



Status 418

Эксперт Python

3854 / 2134 / 571

Регистрация: 26.11.2017

Сообщений: 5,004

Записей в блоге: 2

01.10.2021, 06:07

13

Hawaiian pilot, это похвально. только видео не все хороши. читайте книги.



0



Модератор

Эксперт функциональных языков программированияЭксперт Python

35559 / 19459 / 4071

Регистрация: 12.02.2012

Сообщений: 32,497

Записей в блоге: 13

01.10.2021, 07:39

14

Цитата
Сообщение от Hawaiian pilot
Посмотреть сообщение

Val Rubis, ваш код не сработал тоже(

— да неужели? А у меня сработал…



0



3 / 3 / 0

Регистрация: 18.05.2021

Сообщений: 93

01.10.2021, 12:26

 [ТС]

15

Цитата
Сообщение от Catstail
Посмотреть сообщение

— да неужели? А у меня сработал…

охотно верю )
но я еще в тупиковой ветке развития
что-то по типу дать ребенку подгузник, а он — не сработало! а надеть не пробовал? — ухты, а и так можно было?



0



1182 / 758 / 277

Регистрация: 05.09.2021

Сообщений: 1,772

01.10.2021, 12:28

16

Цитата
Сообщение от Hawaiian pilot
Посмотреть сообщение

а надеть не пробовал?

вот это крайне не честно и не справедливо в высказываниях, вам предложили 100500 вариантов по цене 0 рублей.



0



3 / 3 / 0

Регистрация: 18.05.2021

Сообщений: 93

01.10.2021, 12:45

 [ТС]

17

enx, это же самоирония) всем очень благодарна, люди помогают реально бесплатно и без корысти.



1



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

01.10.2021, 12:45

17

Возвращаем неотрицательный квадратный корень массива,по элементам.

Parameters
xarray_like

Ценности,для которых нужны квадратные низы.

out ndarray, None или кортеж из ndarray и None, необязательно

Место,в которое сохраняется результат.Если предоставлено,оно должно иметь форму,на которую транслируются входы.Если не указано или None,возвращается свежераспределенный массив.Кортеж (возможен только как аргумент ключевого слова)должен иметь длину,равную количеству выходов.

wherearray_like, optional

Это условие транслируется по входу. В местах, где условие истинно, массив out будет установлен на результат ufunc. В другом out массив out сохранит свое исходное значение. Обратите внимание , что если инициализирован out массива создается по умолчанию out=None , места в нем , где условие ложно будет оставаться инициализирован.

**kwargs

Для других аргументов, содержащих только ключевые слова, см. Документацию ufunc .

Returns
yndarray

Массив той же формы, что и x , содержащий положительный квадратный корень каждого элемента в x . Если какой-либо элемент в x является сложным, возвращается сложный массив (и вычисляются квадратные корни из отрицательных вещественных чисел). Если все элементы в x являются действительными, то также и y , с отрицательными элементами, возвращающими nan . Если был указан out , y является ссылкой на него. Это скаляр, если x — скаляр.

See also

emath.sqrt

Версия,которая возвращает комплексные числа при заданных отрицательных реакциях.

Note

0.0 и -0.0 обрабатываются по-разному для сложных входов.

Notes

sqrt имеет — в соответствии с общепринятым соглашением — в качестве своей ветви пересекает реальный «интервал» [ -inf , 0) и непрерывен сверху на нем. Разрез — это кривая на комплексной плоскости, на которой данная комплексная функция не может быть непрерывной.

Examples

>>> np.sqrt([1,4,9])
array([ 1.,  2.,  3.])
>>> np.sqrt([4, -1, -3+4J])
array([ 2.+0.j,  0.+1.j,  1.+2.j])
>>> np.sqrt([4, -1, np.inf])
array([ 2., nan, inf])

Var
  x: Array [1..100] of Integer;
  i,n,a,b: Byte;
BEGIN
Write('Введите количество элементов: ');
Readln(n);
Writeln('Массив: ');
For i:=1 to n do
begin
  x[i]:=Random(100);
  Write(x[i],' ');
end;
Writeln;
a:=Random(n)+1;
Writeln('Квадратный корень ',a,'-го элемента = ',Sqr(x[a]));
a:=Random(n)+1;
b:=Random(n)+1;
Writeln('Ср. арифм ',a,'-го и ',b,'-го элементов = ',(x[a]+x[b])/2:2:2);
END.

Понравилась статья? Поделить с друзьями:

Не пропустите также:

  • Как найти контакты адвоката
  • Как исправить каретку в принтере canon
  • Как найти длинну света
  • Как отключить службу найти айфон
  • Низкая самооценка у ребенка как исправить

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии