Найти в списке два соседних элемента одного знака
Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти числа. Если соседних элементов одного знака нет — не выводите ничего. Если таких пар соседей несколько — выведите первую пару.
a = input() b = a.split() for i in range(len(b)): b[i] = int(b[i]) for i in range(1,len(b)): if (b[i] and b[i-1]) 0: print(b[i],' ',b[i-1]) elif b[i] and b[i-1] > 0: print(b[i],' ',b[i-1]) else: pass
В числовом списке сложить каждые два соседних элемента
Помогите рекурсивно решить задачу(сижу на экзамене=) (f'(2 3 4 5 6 7)) пример работы ((5) (9).
Написать программу adjacent(X,Y,Zs), определяющую два соседних элемента X и Y в списке Zs
ПОМОГИТЕЕЕ ПОЖАЛУЙСТА. Написать программу adjacent(X,Y,Zs), определяющую два соседних элемента X.
Найти в массиве два соседних положительных элемента
Определите наличие в данном массиве два соседних положительных элемента.
Найти в массиве два соседних положительных элемента
Вывести первую пару и последнию пару. Pascal
if хоть и проверяет является ли выражение правдивым или ложным, использовать его нужно осторожно.
sign(x) = 1, если x > 0, sign(x) = -1, если x < 0, sign(x) = 0, если x = 0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
def sign(x): if x > 0: return 1 elif x == 0: return 0 else: return -1 Nums = (1, -2, -1, 1, -2, -6) T = False i = 0 while not T and (i len(Nums) - 1): if sign(Nums[i]) == sign(Nums[i + 1]): print('Числа и имеют один и тот жа знак.'.format(Nums[i], Nums[i + 1])) T = True i += 1
def sameSign(num1, num2): return (num1 > 0) == (num2 > 0) if sameSign(a, b): .
i = 0 while i len(Nums) - 1: if sameSign(Nums[i], Nums[i + 1]): print('Числа и имеют один и тот жа знак.'.format(Nums[i], Nums[i + 1])) break i += 1
a = [int(i) for i in input().split()] for i in range(len(a)-1): if a[i]*a[i+1] >0: print(a[i],a[i+1]) break
a = [int(i) for i in input().split()] for i, j in zip(a[:-1], a[1:]): if i*j > 0: print(i, j) break
Не хотел пользоваться break, без break желал написать.
Добавлено через 1 минуту
Как мне кажется без break было бы красивее, даже если и чуть длиннее. Хотя, это лично мое мнение, и никто не обязан считать так же как и я.
Мне говорили что использование break не желательно. Стараюсь без него теперь обходится.
Добавлено через 54 секунды
Мне кажется break лучше в цикле for использовать, если на то пошло.
так в коде так и используется. а кто тебе сказал break лучше не использовать? представь тебе надо в цикле в пару сотен тысяч найти один элемент который окажется ну допустим пятый. ты его получил в переменную а остальны элементы цикл продолжит перебирать без дела тратя время
Можно было бы создать переменную found, указывающую найден ли элемент. И поставить в условие цикла while эту переменную. Для меня бы этот вариант бы был наиболее красивым (но, тоже, смотря тут какая задача будет, иногда и break будет полезен, но не люблю им пользоваться, если с while можно без ущерба написать код). Хм, а почему ты любишь им пользоваться?
Добавлено через 1 минуту
break учителя не советовали использовать. И уже привык без него обходиться.
Сообщение от Volobuev Ilya
Можно было бы создать переменную found, указывающую найден ли элемент. И поставить в условие цикла while
found = True i = 0 Nums = (1, -2, -1, 1, -2, -6) while found and i len(Nums) - 1: if Nums[i] *Nums[i + 1] > 0: print('Числа <> и <> имеют один и тот жа знак.'.format(Nums[i], Nums[i + 1])) found = False i += 1
Сообщение от Volobuev Ilya
Как мне кажется без break было бы красивее, даже если и чуть длиннее. Хотя, это лично мое мнение, и никто не обязан считать так же как и я.
И тратить процессорное время на проверку флага? break и continue удобно использовать, особенно если с ними код становится быстрее и читать его проще.
В массиве X определить количество двух соседних элементов одного знака
В массиве X = определить количество двух.
Найти два соседних элемента массива, сумма которых максимальна
2.Данo массив размера N. Найти два соседних элемента, сумма которых максимальна, и вывести эти.
Найти два соседних элемента массива, сумма которых максимальна
Дан массив размера N. Найти два соседних элемента, сумма которых максимальна, и вывести эти.
Найти два соседних элемента массива, сумма которых максимальна
Дан массив размера N. Найти два соседних элемента, сумма которых максимальна, и вывести эти.
Найти в массиве два соседних элемента, сумма которых максимальна
Дан массив размера N. Найти два соседних элемента, сумма которых максимальна, и вывести их.
Найти два соседних элемента массива, сумма которых минимальна
Дан массив.Найдите два соседних элемента,сумма которых минимальнп.
Соседи одного знака
Задача из Сириус курсов
Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти числа. Если соседних элементов одного знака нет - не выводите ничего. Если таких пар соседей несколько — выведите первую пару.
Входные данные: Вводится список чисел. Все числа списка находятся на одной строке и не превосходят по модулю 1000.
Выходные данные: Выведите ответ на задачу.
Пример
Ввод: 1 -2 3 -4 -5
Вывод: -4 -5
spisok= [int(s) for s in input().split()] for i in range(1,len(spisok)-1): if spisok[i]*spisok[i+1]>0: print(spisok[i],spisok[i+1]) break
Соседи одного знака
Задача из курса Сириус Условия: Дан список чисел. Если в нем есть два соседних элемента одного.
Соседи одного знака
Условие Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти.
Соседние числа одного знака
Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти числа. Если.
Вывести 1, если число n i m одного знака и 0 иначе
Задано 2 целых ненулевых числа. Вывести 1, если число n i m одного знака и 0 иначе. (использовать.
Найти в списке два соседних элемента одного знака
Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти числа. Если.
Сообщение было отмечено iSmokeJC как решение
Решение
Kineshemets, 1. почему с единицы начинаете? если первые 2 числа являются ответом, то код ее не выведет
2. а если там ноль? или минус ноль? об этом нюансе в условии ни слова, поэтому делайте функцию isnegative или думайте
Соседи одного знака
Задача из курса Сириус
Условия:
Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти числа. Если соседних элементов одного знака нет - не выводите ничего. Если таких пар соседей несколько — выведите первую пару.
Вводится список чисел. Все числа списка находятся на одной строке и не превосходят по модулю 1000
Выходные данные
Выведите ответ на задачу.
Почему не принимается мое решение? Сколько примеров не пробую - у меня все верно решает, а на сайте сириус решение не принимает, пишет, программа выдает неверный ответ. В чем ошибка?
a = list(map(int, input().split())) for i in range(len(a)-1): if a[i]0 and a[i+1]0: print(a[i], a[i+1]) break print()
Соседи одного знака
Задача из Сириус курсов Дан список чисел. Если в нем есть два соседних элемента одного знака.
Соседи одного знака
Условие Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти.
Соседние числа одного знака
Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти числа. Если.
Вывести 1, если число n i m одного знака и 0 иначе
Задано 2 целых ненулевых числа. Вывести 1, если число n i m одного знака и 0 иначе. (использовать.
l = [1, -2, 3, -4, -5] for i in range(len(l) - 1): if abs(sum([l[i],l[i+1]])) == sum([abs(l[i]),abs(l[i+1])]): print(l[i],l[i+1]) break
Найти в списке два соседних элемента одного знака
Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти числа. Если.
В массиве целых найти наиболее длинную последовательность чисел одного знака
Надо написать на питоне задание В массиве целых найти наиболее длинную последовательность чисел.
Проверка, одного знака или разных
Всем привет! Такой вопрос: есть 1 функция и 2 точки. Надо проверить, одинаковые ли значения.
Округлениче числа до одного знака после запятой
Имеется число: 7, 19382834 (грубо говоря). Нужно округлить до 7, 1. Подскажите, пожалуйста.
Определить, являются ли все числа последовательности одного знака
C++ Дана последовательность из вещественных чисел, которые вводятся по одному. За последним числом.
Увеличить значения чисел x и y на 0,2, если они одного знака
Даны два числа x и y. Увеличить их значения на 0,2, если они одного знака. В противном случае.
Java Соседние числа одного знака, без массивов
Пожалуйста подскажите или намекните как найти два соседних числа одного знака, без использования.
Соседи одного знака
Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти числа. Если соседних элементов одного знака нет — не выводите ничего. Если таких пар соседей несколько — выведите первую пару.
Есть такой набросок, такое ощущение что до последнего элемента в списке цикл не доходит и в целом решение некорректное.
Решения готового не прошу,хочу сам понять что упускаю, к тому же,в голову идей никаких не лезет.
a = [int(i) for i in input().split()] for i in range(1, len(a)-1): if (a[i] and a[i+1] > 0) or (a[i] and a[i+1] 0): print(a[i],end = ' ')
Соседи одного знака
Задача из Сириус курсов Дан список чисел. Если в нем есть два соседних элемента одного знака.
Соседи одного знака
Задача из курса Сириус Условия: Дан список чисел. Если в нем есть два соседних элемента одного.
Соседние числа одного знака
Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти числа. Если.
Вывести 1, если число n i m одного знака и 0 иначе
Задано 2 целых ненулевых числа. Вывести 1, если число n i m одного знака и 0 иначе. (использовать.
Сообщение было отмечено D3nor как решение
Решение
>>> a = [1,2,3,4,5,6] >>> for i in range(1, len(a)-1): print(a[i] ,a[i+1]) 2 3 3 4 4 5 5 6 >>>
но при этом до последнего элемента цикл не доходит но вы его получаете a[i+1] для сравнения с предыдущим
if (a[i] and a[i+1] > 0) or (a[i] and a[i+1] 0):
>>> 4*4 > 0 True >>> -4 *4 > 0 False >>> -4 * -4 > 0 True >>>
в задании требуется вывести пару а не одно число и если первая пара найдена то искать остальные не нужно
прерываем цикл
Понял свою ошибку, но теперь не знаю как сделать чтобы цикл начинался не со второго элемента, а с самого начала?
Сообщение от D3nor
Сообщение от Semen-Semenich
форма for i in range(0, len(a)-1) думаю ТС более понятна, хотя for i in range( len(a)-1) правильнее. А с двоечкой опечатка)))
Найти в списке два соседних элемента одного знака
Дан список чисел. Если в нем есть два соседних элемента одного знака, выведите эти числа. Если.
В массиве целых найти наиболее длинную последовательность чисел одного знака
Надо написать на питоне задание В массиве целых найти наиболее длинную последовательность чисел.
Проверка, одного знака или разных
Всем привет! Такой вопрос: есть 1 функция и 2 точки. Надо проверить, одинаковые ли значения.
Округлениче числа до одного знака после запятой
Имеется число: 7, 19382834 (грубо говоря). Нужно округлить до 7, 1. Подскажите, пожалуйста.
Определить, являются ли все числа последовательности одного знака
C++ Дана последовательность из вещественных чисел, которые вводятся по одному. За последним числом.
Увеличить значения чисел x и y на 0,2, если они одного знака
Даны два числа x и y. Увеличить их значения на 0,2, если они одного знака. В противном случае.
Java Соседние числа одного знака, без массивов
Пожалуйста подскажите или намекните как найти два соседних числа одного знака, без использования.