Pessoal ,por favor,curtam para ele ver e ajudar nós, estudantes de TI: Por favor Guanabara, ensine Algoritmo e Estrutura de Dados: contagem de operações,notação O, ArrayList, fila, pilha, lista Encadeada, lista duplamente encadeada, árvore, árvore binária, árvore binária de pesquisa ,sorts, etc... Estou precisando muito disso em Java! Adoraria te ver ensinando porque acho seu método de ensino muito fácil e não tem muita coisa sobre isso e ALEST é uma matéria meia confusa de entender em certos momentos e eu tenho certeza que vc ensinaria de uma maneira muito mais fácil. Amo suas aulas!!!❤❤❤❤❤
A primeira coisa que vou fazer quando eu conseguir um emprego como programadora, vai ser apoiar o curso em vídeo! MUITO OBG GUANABARA! Que existam mais pessoas como você nesse país!
é isso que eu gosto na progamação, a progamação pensa no usuario, na experiencia de usuario, e o guanabara faz mt isso nas aulas, sem pressa apenas mantenha o foco, e dê o seu máximo.
mas pra falar a vdd eu só sinto vontade de aprender com ele. Tô fazendo o curso de análise e desenvolvimento de sistemas e nenhum professor ensina de forma tão didática e divertida!
Essa é a parte ruim de aprender com o Guanabara...vai ser muito difícil você encontrar um professor tão bom quanto ele e só vai ter vontade de aprender com ele@@eduardapopisilva871
DICA DE OURO ECONOMIZA MUITO TEMPO E LINHAS!!!!! print(*num, sep= ', ')# '*' mostra a lista sem os colchetes, e sep é a string entre as variáveis da lista input:[1, 2, 3] output: 1, 2, 3
Estava no exercicio 86, estava muito dificil para mim, pensei em desistir mas retornei para a aula. VAMO QUE VAMO, se ta dificil é porque vai valer a pena.
Se alguem quiser aprimorar o seu código, do tipo o que perguntam ao usuário se ele quer continuar, e se o usuário não digitar uma resposta válida ex:(S/N) o programa continua perguntando. Você deve ter notado que ao der um enter sem digitar nada, da erro no programa. Isso porque fazendo da forma o professor ensinou até agora, fazemos dessa maneira: while True: # Pergunta ao usuário se deseja continuar: r = str(input('Quer continuar? [S/N]')).strip().upper() [0] # Se a resposta for sim o não (S/N): if r in 'SN': # Interrompe o loop: break Esse loop está funcional, mas caso não se digitemos nada e dermos enter, vai dar erro, isso porque o programa tentará achar o valor em [0] que não existe. Podemos contornar isso dessa maneira: while True: # Pergunta ao usuário se deseja continuar: r = str(input('Quer continuar? [S/N]')).strip().upper() # Se a resposta não for um espaço vazio # e for sim ou não (S/N): if r != ' ' and r in 'SN': # Pegue apenas a primeira # letra da resposta: r = r[0] # Interrompe o loop: break Acima em: if r != ' ' and r in 'SN': eu dei espaço nas aspas simples por que nessa plataforma estavam muito juntinhas, mas no python, digite sem espaço. Dessa forma o programa so vai buscar o valor em [0] se ele a string não for vazia. Também é possível fazer isso para digitar os números, para que o programa so aceite números flutuantes, inteiros, não aceite espaços vazios, etc. Eu ainda não testei. Obrigado, por terem lido até aqui. Por enquanto eu estou resolvendo os exercícios dessa aula, espero que mais para frente o professor dê uma solução melhor e mais simples do que essa. Quantas vezes fizemos um textão nos exercícios e o professor digitou pouquissimas linhas, com estilo. KK
Muito boa sua dica, mas eu faço dessa maneira: while True: # código resp = ' ' # Aceita apenas 'S' ou 'N' como resposta while resp != 'S' and resp != 'N': resp = str(input('Deseja continuar? [S/N] ')).strip().upper() # Sair do loop if resp == 'N': break Desse modo eu evito o erro da entrada vazia e também do usuário escrever "sol" e o programa aceitar como um 'S'
fiz a mesma coisa praticamente só que de um modo mais simples ... while True: sn = input('deseja continuar (s/n)?') if sn in 'Nn': break desse jeito qualquer coisa que não seja um não vai continuar o loop, se quiser que a resposta seja mais especifica é so colocar um while sn not in 'SsNn' pra continuar perguntando se deseja continuar
10:08 Cara, eu amo o operador *in* . Uma vez eu tava estudando jogos e tinha a arena do jogo que era basicamente uma matriz (lista), eu tinha que verificar posições especiais para não permitir blocos lá, em vez de percorrer toda a lista, eu só o *in* e se tivesse o bloco já era apagado. Aquilo foi demais!
Faça suas práticas aí (18:52), super importante! Digo isso nas minhas aulas também. Quem quer aprender, tem que praticar. Estou praticando e aprendendo, com 57 anos. Muito obrigado!
Professor, você me ajudou muito em 2016. Foi um dos principais responsáveis por eu trocar a aversão por paixão em relação à matemática. Muito obrigado!
Sensacional!!! Estudo Full-stack python. Já estou na reta final do front-end desenvolvendo projetos com React, Redux e StyledComponentes. Me preparo por aqui para o back-end em python. Tenho certesa que vou chegar bem preparado para entender conceitos mais avançados, pois quebrei muito a cabeça aqui para resolver esses exercícios. Hoje já tenho uma certa facilidade para resolver vários, mas com certeza valeu a pena demaais cada aula e exercicios estudados até aqui.
Caso alguém não queira usar o " enumerate " dá para fazer assim também : for c in range(0, len(valores)): print(f'Na posição {c} eu encontrei o numero {valores[c]}')
@@inteligencianaoartificialb3349 , Sim, mas eles vão ter usos diferentes no dia a dia. E, quase sempre, vc acaba usando os dois juntos (dicionário dentro de lista, por exemplo).
Estou fazendo o curso em 2024, tenho muitos recursos para estudo, e vou te falar tem questão que pra alguns é mais difícil e tem outras que acham mais fáceis , a logica esta relacionada a pratica, quanto mais pratica melhor sua lógica.
Cara, esse curso ta maravilhoso, estou fazendo ele enquanto estudo a mesma linguagem na faculdade, está me ajudando muito. Com certeza vou virar um apoiador!!
A forma como o professor Guanabara explica é perfeita. Um excelente orador, um excelente professor. Ele sabe como te manter focado na aula e não deixa você ficar desanimado, usando gestos e sorriso. Professor mais inteligente na área técnica de TI atualmente. Sei que o vídeo é antigo e as aulas também, mas conhecimento é algo atemporal.
Sinceramente, o Grings da programacao está aqui!!! Que didática maravilhosa, fazendo uso dos recursos visuais para facilitar a compreensão. Sensacional professor!
25:40 Ao lidar com listas em Python, a atribuição de uma lista a outra variável não cria uma cópia separada da lista original. Em vez disso, ambas as variáveis compartilham o mesmo conteúdo na memória. O nome de uma lista em Python é um identificador para o local na memória onde a lista é armazenada. Quando atribuímos uma lista a outra variável, estamos apenas copiando o identificador da lista, não o conteúdo da lista em si. Ambas as variáveis `a` e `b` apontam para o mesmo local na memória onde a lista está armazenada. Portanto, qualquer modificação feita em uma variável afeta a outra, pois elas compartilham o mesmo conteúdo. Atualização: A função id() pode ser usada para verificar esse comportamento. Ela retorna o identificador único (ou endereço) na memória para qualquer objeto. Usando id(a) e id(b), podemos confirmar que as variáveis `a` e `b` estão referenciando o mesmo objeto na memória, ou seja, os dois IDs serão iguais, indicando que ambas as variáveis apontam para o mesmo local. Esse id pode mudar a cada execução pois o Python otimiza a alocação de memória automaticamente
Mesmo que eu tenha que rever todos os mundos, aula por aula, exercício por exercício, não vou parar, vou continuar até ter certeza de ter dominado todos os assuntos. Não tenha pressa de terminar, pois o processo é o que importa. Um troféu é uma taça vazia se o processo não fez sentido, então cara, continua e vai no seu ritmo!
Às vezes me frusto, por não compreender alguns conceitos, rapidamente. Entretanto, seguirei o seu exemplo. Não desistir, até dominar a linguagem. Obrigado, pelas palavras!
@@leonardolopes3317 eu desisti algumas vezes da programação antes por pensar dessa forma, de ter que aprender tudo rapidamente, mas agora eu coloquei na minha cabeça o seguinte, tudo leva muito tempo para aprender, seja falar, aprender a jogar um jogo, principalmente sendo competitivo, andar, desenhar ou o que for, então tá tudo bem, e outro pensamento que levo também é: daqui 5 anos, estudando todos os dias, eu com certeza vou aprender tudo o que eu não sei hoje, e isso pra daqui em diante.
Este ultimo exercício foi o mais desafiador para minha lógica até agora, mas depois que você pensa como você interpreta naturalmente se está certo ou errado uma expressão só é traduzir isto pro Python...
No: 36:42 o Guanabara fala, volte pra entender melhor. E eu assino em baixo, já voltei umas 15 vezes pra entender esse negócio, não tava fácil MN. Tava quase desistindo já, mais eu insisto. Comecei a entender melhor essas partes de listas.🎉 Bora pra luta 💪👊
@@jandersondasilvaalves1077 já acabou o curso MN ?? De python? Tô quase acabando esse aqui. MN o que vc acha que e bom estudar pra dár continuidade em python né curso aqui?? Só orientação a objetos ?? Tava procurando uma linguagem pra estudar por fora da faculdade, aí escolhi python. vou ter que estudar umas coisas por fora, pra complementar.
Eu fiquei com uma dificuldade real nos exercícios 80 e 83. Fiquei uns 30 minutos batendo cabeça e não tinha escrito uma única linha de código, então deixei pra depois. Hoje, no dia seguinte, tentei de novo e, adivinha só? Eu consegui! Então, se tá com muita dificuldade, dá um tempo e esfria a cabeça, mas não desiste! Mesmo o código ficando "ruim" até mesmo pro seu nível agora, tenta! Já é um aprendizado...
ex079: """ Crie um programa onde o usuário possa digitar vários valores númericos e cadastre-os em uma lista. Caso o número já exista lá dentro, ele não será adicionado.No final serão exibidos todos os valores únicos digitados, em ordem crescente. """ numeros = [] while True: num = int(input('Digite um valor')) if num not in numeros: numeros.append(num) print('Valor adicionado com sucesso...') else: print('Valor duplicado! Não vou adicionar...') while True: resp = str(input('Quer continuar? ][S/N]')).upper() if resp in 'SN': break else: print('Resposta invalida. ', end='') if resp in 'N': break print('=-='*15) print(f'Voce digitou os valores {sorted(numeros)}')
Esse cara tem o dom de ensinar, porque como ele mesmo disse, há exercícios mais difíceis e outros mais fáceis tudo misturado, pois o que ele quer é ensinar os comandos diferentes. Por isso, esse é o melhor canal para aprender a programar.
Ex 079: l = list() while True: n = int(input('Digite um valor inteiro pra ser adicionado. [0] para sair')) if n == 0: break if n in l: print('Este número já existe na lista') else: l.append(n) l.sort() print(l)
Aeeee.feliz pois o seu trabalho e muito bom.e eu estou começando a faculdade e vc me ajuda muito.cada vez que tenho alguma dúvida venho assistir os vídeos.e ao poucos estou aprendendo.obrigada.
Exercício 79 eu fiquei orgulhoso de mim mesmo de ter conseguido, então segue minha resposta: lista = [] n = 0 o = 0 while True: n = int(input('Digite um valor: ')) if n in lista: print('Valor duplicado.') o = (str(input('Quer continuar?(S/N)'))) if o in "Nn": break else: lista.append(n) print ('Valor adicionado!') o = str(input('Quer continuar? (S/N) ')) if o in "Nn": break lista.sort() print(f'Você digitou os valores {lista}')
Ficarei extremamente feliz em contribuir com esse curso, percebo que as visualizações caíram bastante, Não sei como pois suas aulas são incríveis e eu aprendi muito com elas.
Guilherme Teixeira de Freitas Pois é, muitos desistiram quando a coisa começou a dificultar e não foram atrás. Eu também tive um pouco de dificuldade em algumas partes, mas nunca pensei em desistir.
Ex 083: expressao=str(input('Digite uma expressão númeria: ')) primeiro = expressao.count(')') segundo = expressao.count('(') if primeiro == segundo: print('Sua expressão é válida') else: print('Sua expressão é inválida')
Eu tava demorando pra entende o método de maior e menor sem usar os atalhos do python, agora que consegui entender vendo a resolução do desafio 78 tá bem mais fácil.
Mundo Obrigador Por estar disponibilizando esta curso! Antes eu queria saber so de jogar no pc, e Hoje eu instalei o Linux e quero ser um Progamador! Graças ao Diolinux e ao Curso em Video! Obrigado de Coração!
Fiz de um jeito bem simples o desafio 83. expr = str(input('Digite uma expressão: ')) a = expr.count('(') b = expr.count(')') if a != b: print('Sua expressão é invalida.') else: print('Sua expressão é válida.')
Também pensei assim, mas ai se vc colocar a expressão ((x+y)*2x)) -7*(x+(3y+2), a vai receber 4 e b vai receber 4 também, dando como válida a expressão, sendo que não esta válida.
# Desafio 078 lst, aux = list(), list() numMaior, numMenor, counter = None, None, 0 # Preenche a lista com 5 valores numericos e a exibe for i in range(0, 5): lst.append(float(input(f'Digite o valor {i+1}: '))) print(lst) # Obtem o valor maior e o menor numMaior, numMenor = max(lst), min(lst) # Faz a contagem das vezes em que o maior valor aparece na lista for i in range(0, len(lst)): if lst[i] == numMaior: aux.append(i) print(f'O maior valor e {numMaior} e ele esta nas posicoes {aux}.') # Faz a contagem das vezes em que o menor valor aparece na lista aux = list() for i in range(0, len(lst)): if lst[i] == numMenor: aux.append(i) print(f'O menor valor e {numMenor} e ele esta nas posicoes {aux}.')
"você não ta com pressa de terminar, você está com vontade de aprender..." melhor professor, cara. Sério eu sempre fico fazendo as mesmas coisas que o professor faz, ai eu olho e penso:'' e se eu tentar fazer isso?'' ás vezes da muito certo skks
Orgulhoso: todos os desafios feitos! O desafio 80 demorei dois dias quebrando a cabeça, mas consegui, sem olhar a resposta no exercício, VALEEEEEU PROFESSOOOOR!
valores = [] for i in range(5): valores.append(int(input(f'Digite um valor na posição {i}: '))) for v, c in enumerate(valores): if v == 0: menor = maior = c if menor > c: menor = c if maior < c: maior = c print(f'Você digitou os valores {valores}') print(f'O menor valor que você digitou foi {menor}. E aparece nas posições ', end='') for i, c in enumerate(valores): if menor == valores[i]: print(i, end='...') print(f' O maior valor que você digitou foi {maior}. E aparece nas posições ', end='') for d, b in enumerate(valores): if maior == valores[d]: print(d, end='...')
Ex 083: ex = list(input('Digite a expressão:')) total = ex.count('(') + ex.count(')') if total % 2 == 0: print('Expressão válida') else: print('Expressão ínvalida')
desafio 078: num = list() for d in range(0, 5): num.append(int(input('Digite um numero: '))) print(f'O maior valor da lista é {max(num)} e está na posição {num.index(max(num))}') print(f'O menor valor da lista é {min(num)} e está na posição {num.index(min(num))}')
Teve dois anúncios: um relacionado ao masterclass (quase 2 minutos) o qual eu assisti inteiro por ser inglês e outro de uma pasta de dente que durou apenas 15 segundos. Fazendo o possível para ajudar com a monetização do vídeo.
Que show de didática, conhecimento, humildade, simpatia... Guanabara é show demais, obrigada! Amando as aulas e exercícios de Py e os comentários da galera
@@barbaragualberto6981 Primeira linguagem é sempre a mais difícil, aprendi javascript, depois node, e agora python, comecei a estudar Java mais dei uma parada nos estudos porque tenho que acabar o front-end do site pra depois fazer o app dele, quando acabar vou ter mais tempo pra focar no app.
Uma dica mesmo que mesmo que você não tenha pedido. você usou muitos if/elif e comparou cada posição individualmente, como são 5 valores é possível fazer, porém em uma situação com uma repetição maior ficaria inviável. A minha dica seria que sempre que um número for adicionado, o programa comparasse ele com os existentes na lista e caso ele seja menor ou igual a um existente, o novo valor toma a posição do atual e o "empurra" para uma nova. Não estou dizendo que seu código está errado ou te criticando, só uma dica mesmo. Fica na paz
ex83: eq = str(input('Digite uma expressão: ')) if eq.count('(') == eq.count(')'): print('A expressão é válida.') else: print('A expressão é inválida.')
Desafio 78 val = list() for c in range(0, 5): n = int(input('Digite um número: ')) val.append(n) print(f'Você digitou os valores', *val, sep=' ') print(f'O maior valor digitado foi {max(val)} na posição {val.index(max(val))}. ' f'O menor valor digitado foi {min(val)} na posição {val.index(min(val))}') Desafio 79 val = list() while True: n = int(input('Digite um número: ')) if n in val: pass if n not in val: val.append(n) conf = str(input('Quer continuar? [S/N] ')).lower() if conf == 's': continue if conf == 'n': break print(sorted(val)) Desafio 80 (não consegui fazer sozinho) val = list() for c in range(0, 5): n = int(input('Digite um número: ')) if c == 0 or n > val[-1]: val.append(n) else: pos = 0 while pos < len(val): if n
78: ct = -1 vl = [] for cont in range(1,6): vl.append(int(input('Digite um valor: '))) print(f'Você digitou os valores {vl}') print(f'O maior valor é {max(vl)} que está nas posições', end=' ') for c in vl: ct = ct + 1 if c == max(vl): print(ct, end='... ') ct = 0 print(f' O menor valor é {min(vl)} que está nas posições', end=' ') for c in vl: ct = ct + 1 if c == min(vl): print(ct, end='... ')
79: r = '' lista = [] while True: n = int(input('Digite um valor: ')) if n in lista: print('Valor duplicado! Não será adicionado...') else: lista.append(n) print('Valor adicionado com sucesso!') while True: r = str(input('Deseja continuar? [S/N] ')).strip().upper() if r == 'S' or r == 'N': break print('Resposta inválida.') if r == 'N': break lista.sort() print(f'Você digitou os valores {lista}')
82: r = ' ' lista = [] pares = [] impares = [] while True: n = int(input('Digite um valor: ')) lista.append(n) if n % 2 == 0: pares.append(n) else: impares.append(n) while True: r = str(input('Deseja continuar? [S/N] ')).strip().upper() if r == 'S' or r == 'N': break print('Resposta inválida.') if r == 'N': break print(f'Você digitou os valores {lista} Os pares são {pares} E os ímpares {impares}')
078 for i in range(0, 5): l.append(int(input('Digite um numero: '))) print(f'Maior valor digitado eh {max(l)} e na posicao {l.index(max(l)) + 1}') print(f'O menor valor digitado eh {min(l)} e esta na posicao {l.index(min(l)) + 1}')
meu codigo pro 80: lista = [] j = 0 k = 0 # posição no insert for c in range(0, 8): n = int(input('Digite um valor:')) if c == 0: lista.append(n) print(lista) else: while True: if j == len(lista) or n < lista[j]: lista.insert(j, n) print(lista) print('-=-' * 10) j = 0 break j += 1 print(lista)
O primeiro exercício eu fiz certinho rapidão, me achando todo todo eis que vem o Guanabara e diz que tem que mostra mais de 1 posição caso os número forem repetidos... T_T
demorei mas consegui 😁, pode não ser a melhor forma mas dá certo para quem não sabe nada já é um começo! lista1 = list() c = 0 m = 0 for i in range(0, 5): lista1.append(int(input(f'Digite um valor para a Posição: '))) print('=-'*30) print(f'Você digitou os valores {lista1}') print(f'O maior valor digitado foi {max(lista1)} nas posições', end=' ') c = max(lista1) for n, v in enumerate(lista1): if v == c: print(f'{n}...', end=' ') m = min(lista1) print(f' O menor valor digitado foi{m} nas posiçoes ', end=' ') for n, v in enumerate(lista1): if v == m: print(f'{n}...', end=' ')
RESUMO - Só colar e rodar teu código: print('Manipulação de Listas') print('') lista = ['carro' , 'lanchas' , 'moto' , 'jetski' , 'pedestres' , 'banhistas'] print(f'→ Lista Normal: {lista}') print('') lista.append('golf') print(f'1) → lista.append("golf"): {lista}') print(' • Serve para ADICIONAR algum item no final') print('') lista.insert(2,'Adicionei aqui') print(f'2) → lista.insert(2,"Adicionei aqui"): {lista}') print(' • Serve para ADICIONAR algum item na posição desejada, ele não vai substituir mas vai tomar o lugar do que ja estava sem remover.') print('') lista.pop(2) print(f'3) → lista.pop(2): {lista}') print(' • Serve para REMOVER algum item na posição desejada. Caso estiver sem referência dentro "lista.pop()", removerá o último.') print('') lista.remove('moto') print(f'4) → lista.remove("moto"): {lista}') print(' • Serve para REMOVER algum item pelo texto ou número EXATO como está na lista.') print('') lista.remove('jetski') print(f'5) → lista.remove("moto"): {lista}') print(' • Serve para REMOVER algum item pelo texto ou número EXATO como está na lista.') print('') intervalo = list(range(4,11)) print(f'6) → list(range(4,11)): {intervalo}') print(' • Serve para CRIAR uma lista com o intervalo desejado.') print('') valores = [8,2,5,4,9,3,0] valores.sort() print(f'7) → valores = [8,2,5,4,9,3,0] → valores.sort(): {valores}') print(' • Serve para ORDENAR os valores de uma lista do menor para o maior.') print('') valores = [8,2,5,4,9,3,0] valores.sort(reverse=True) print(f'8) → valores = [8,2,5,4,9,3,0] → valores.sort(reverse=True): {valores}') print(' • Serve para INVERTER a ordenação dos valores de uma lista, do maior para o menor.') print('') contagem = len(valores) print(f'9) → contagem = len(valores): {contagem}') print(' • Serve para CONTAR a quantidade de valores de uma lista.') print('')
Antes de especificar que deveria usar lista eu fiz dessa forma: expressao = str(input('Digite a expressao: ')) contagem_aberto = expressao.count('(') contagem_fechado = expressao.count(')') if contagem_aberto == contagem_fechado: print('Sua Expressao esta correta!') else: print('Sua Expressao está errada!')
O exercício 83 tentei fazer com que o programa checasse se tem parênteses aberto e fechado, tempos depois eu descobri que isso pouco importa, pq se tiver dois parênteses abrindo e um fechando o programa ia dizer que a expressão estava correta. Então o objetivo era saber quantos parênteses estavam abertos e esse número tinha que ser igual ao número de parênteses fechados. Assim ficou meu programa: parenteses = list() parenteses.append(str(input('Digite uma expressão: '))) for p in parenteses: a = p.count('(') b = p.count(')') if a == b: print('Expressão correta.') else: print('Expressão errada.')
usei a mesma lógica cont = cont2 = 0 exp = str(input('Digite uma expressão matemática: ')) if '(' in exp: cont += 1 if ')' in exp: cont2 += 1 print('Analisando.....') if cont == cont2: print('expressão correta!') else: print('Expressão errada!')
Meu ex80 ficou assim : lista = [] numero = '' cont = 0 while cont != 5: numero = int(input('Digite um número: ')) if lista == []: lista.append(numero) print('Número adicionado na lista') elif max(lista) < numero: lista.append(numero) print('Adicionado ao final da lista') elif min(lista) > numero: lista.insert(0, numero) print('Adicionado ao início da lista') else: for p, n in enumerate(lista): if n > numero: lista.insert(p, numero) print(f'Número {numero} adicionado na posição {p}') break if n == numero: break cont = cont + 1 print('A lista de números digitados em ordem é:', lista)
# Desafio 083 exp = str(input("Digite uma expressão matemática: ")) counter = 0 for letra in exp: if letra in "()": counter += 1 if counter % 2 == 0: print("Expressão válida.") else: print("Expressão inválida.")
Minhas soluções: #Ex 078 valores = [] for n in range(5): valores.append(int(input(f'Digite um valor para a posição {n}: '))) print('=-'*30) print('Você digitou os valores', valores) print(f'O maior valor digitado foi {max(valores)} nas posições', end='') for p in range(5): if valores[p] == max(valores): print(f' {p}...', end='') print(f' O menor valor digitado foi {min(valores)} nas posições', end='') for p in range(5): if valores[p] == min(valores): print(f' {p}...', end='') #Ex079 valores = [] continua = 'S' while continua[0] != 'N': valor = int(input('Digite um valor: ')) if valor not in valores: valores.append(valor) print('Valor adicionado com sucesso...') else: print('Valor duplicado! Não vou adicionar...') continua = input('Quer continuar? [S/N] ').upper() valores.sort() print('-='*30) print(f'Você digitou os valores {valores}') #Ex080 valores = [] for n in range(5): valor = int(input('Digite um valor: ')) if not valores: valores.append(valor) print('Adicionado ao final da lista...') elif valor > valores[-1]: valores.append(valor) print('Adicionado ao final da lista...') else: for p, v in enumerate(valores): if valor
Bom, a última está correta, mas do jeito que eu tinha feito não precisava de listas... então refiz dividindo em duas listas e comparando o len() delas: #Ex083 expressao = input('Digite a expressão: ') abre = [] fecha = [] validade = 'correta' for c in expressao: if c == '(': abre.append(c) elif c == ')': fecha.append(c) if len(fecha) > len(abre): validade = 'errada' break if len(fecha) != len(abre): validade = 'errada' print(f'Sua expressão está {validade}!')
Se considerar a String como uma lista de caracteres, você usa uma lista na primeira sim =) expressao = input('Digite a expressão: ') validade = 'correta' peso = 0 for p in expressao: if p == '(': peso += 1 else: peso -= 1 if peso < 0: validade = 'errada' if peso != 0: validade = 'errada' print(f'Sua expressão está {validade}!')
Quis dizer que sai do escopo da aula de hoje. Coloquei a lista sem necessidade, como você mesmo pôde perceber. Por isso fiz o exercício novamente do outro jeito.
o peso é verificado dentro do loop. Estando em 0 não tem colchetes aberto... se vc usa ")" vai resultar em -1. Estando -1, vai acusar que está errado. Mesmo que depois tenha "(", já era, vai estar errado, mesmo que o número de "(" e ")" seja o mesmo.
Ex 078: l = [] for c in range(0,5): l.append(int(input('Digite um valor'))) print(f'Maior valor: {max(l)}') print(f'Menor valor: {min(l)}') for pos, valor in enumerate(l): print(f'Número {valor}, encontrado na posição: {pos}')
exercício 78: valores=list() for cont in range(0, 5): valores.append(int(input("Digite um valor: "))) print(f'O maior valor fornecido foi {max(valores)}') print(f'O menor valor fornecido foi {min(valores)}')
Desafio 81 l=[] while True: n=int(input('Digite um número inteiro para adiciona-lo[0 PRA PARAR]')) l.append(n) if n ==0: break print(f'Você adicionou {len(l)-1} valores à lista') if 5 in l: print('O número 5 foi adicionado') else: print('Você não adicionou o número 5') l.sort(reverse= True) print(f'Os valores que você digitou em ordem decrescente ficam:{l}')
Estude pelo nosso site e tire certificado de 40 horas. Curso completo em:
www.cursoemvideo.com/curso/python-3-mundo-3/
Pessoal ,por favor,curtam para ele ver e ajudar nós, estudantes de TI:
Por favor Guanabara, ensine Algoritmo e Estrutura de Dados: contagem de operações,notação O, ArrayList, fila, pilha, lista Encadeada, lista duplamente encadeada, árvore, árvore binária, árvore binária de pesquisa ,sorts, etc... Estou precisando muito disso em Java! Adoraria te ver ensinando porque acho seu método de ensino muito fácil e não tem muita coisa sobre isso e ALEST é uma matéria meia confusa de entender em certos momentos e eu tenho certeza que vc ensinaria de uma maneira muito mais fácil. Amo suas aulas!!!❤❤❤❤❤
A primeira coisa que vou fazer quando eu conseguir um emprego como programadora, vai ser apoiar o curso em vídeo!
MUITO OBG GUANABARA! Que existam mais pessoas como você nesse país!
voce ta fazendo agr ou ja fez o curso?
Olá, Arce! Tudo bem? Conseguiu o emprego?
Conseguiu o emprego ?
Conseguiu o emprego?
conseguiu emprego? rsrs
"você não ta com pressa de terminar, você está com vontade de aprender..." melhor prof do mundo!
é isso que eu gosto na progamação, a progamação pensa no usuario, na experiencia de usuario, e o guanabara faz mt isso nas aulas, sem pressa apenas mantenha o foco, e dê o seu máximo.
mas pra falar a vdd eu só sinto vontade de aprender com ele. Tô fazendo o curso de análise e desenvolvimento de sistemas e nenhum professor ensina de forma tão didática e divertida!
Essa é a parte ruim de aprender com o Guanabara...vai ser muito difícil você encontrar um professor tão bom quanto ele e só vai ter vontade de aprender com ele@@eduardapopisilva871
DICA DE OURO ECONOMIZA MUITO TEMPO E LINHAS!!!!!
print(*num, sep= ', ')# '*' mostra a lista sem os colchetes, e sep é a string entre as variáveis da lista
input:[1, 2, 3]
output: 1, 2, 3
Muito Obrigado
nossa mano, vlw, eu usava for e o caramba só pra deixar assim ;-;
dica de ouro mesmo! up
Exemplo:
names = ["Sam", "Peter", "James", "Julian", "Ann"]
print(*names, sep=", ")
output: Sam, Peter, James, Julian, Ann
Ajudou muito man.
Estava no exercicio 86, estava muito dificil para mim, pensei em desistir mas retornei para a aula. VAMO QUE VAMO, se ta dificil é porque vai valer a pena.
A melhor parte das aulas sao as que prof. Guanabara diz pra não desistir. isso torna ele um professor de respeito!
Se alguem quiser aprimorar o seu código, do tipo o que perguntam ao usuário se ele quer continuar, e se o usuário não digitar uma resposta válida ex:(S/N) o programa continua perguntando. Você deve ter notado que ao der um enter sem digitar nada, da erro no programa. Isso porque fazendo da forma o professor ensinou até agora, fazemos dessa maneira:
while True:
# Pergunta ao usuário se deseja continuar:
r = str(input('Quer continuar? [S/N]')).strip().upper()
[0]
# Se a resposta for sim o não (S/N):
if r in 'SN':
# Interrompe o loop:
break
Esse loop está funcional, mas caso não se digitemos nada e dermos enter, vai dar erro, isso porque o programa tentará achar o valor em [0] que não existe. Podemos contornar isso dessa maneira:
while True:
# Pergunta ao usuário se deseja continuar:
r = str(input('Quer continuar? [S/N]')).strip().upper()
# Se a resposta não for um espaço vazio
# e for sim ou não (S/N):
if r != ' ' and r in 'SN':
# Pegue apenas a primeira
# letra da resposta:
r = r[0]
# Interrompe o loop:
break
Acima em: if r != ' ' and r in 'SN':
eu dei espaço nas aspas simples por que nessa plataforma estavam muito juntinhas, mas no python, digite sem espaço. Dessa forma o programa so vai buscar o valor em [0] se ele a string não for vazia.
Também é possível fazer isso para digitar os números, para que o programa so aceite números flutuantes, inteiros, não aceite espaços vazios, etc. Eu ainda não testei.
Obrigado, por terem lido até aqui. Por enquanto eu estou resolvendo os exercícios dessa aula, espero que mais para frente o professor dê uma solução melhor e mais simples do que essa. Quantas vezes fizemos um textão nos exercícios e o professor digitou pouquissimas linhas, com estilo. KK
Muito boa sua dica, mas eu faço dessa maneira:
while True:
# código
resp = ' '
# Aceita apenas 'S' ou 'N' como resposta
while resp != 'S' and resp != 'N':
resp = str(input('Deseja continuar? [S/N] ')).strip().upper()
# Sair do loop
if resp == 'N':
break
Desse modo eu evito o erro da entrada vazia e também do usuário escrever "sol" e o programa aceitar como um 'S'
@@Maxi-ms7mc O != faz toda diferença aqui
@@MonkeyDLuffy-xp5dg kkkkkkkk literalmente.
fiz a mesma coisa praticamente só que de um modo mais simples ...
while True:
sn = input('deseja continuar (s/n)?')
if sn in 'Nn':
break
desse jeito qualquer coisa que não seja um não vai continuar o loop, se quiser que a resposta seja mais especifica é so colocar um while sn not in 'SsNn' pra continuar perguntando se deseja continuar
10:08 Cara, eu amo o operador *in* . Uma vez eu tava estudando jogos e tinha a arena do jogo que era basicamente uma matriz (lista), eu tinha que verificar posições especiais para não permitir blocos lá, em vez de percorrer toda a lista, eu só o *in* e se tivesse o bloco já era apagado. Aquilo foi demais!
Faça suas práticas aí (18:52), super importante! Digo isso nas minhas aulas também. Quem quer aprender, tem que praticar. Estou praticando e aprendendo, com 57 anos. Muito obrigado!
Professor, você me ajudou muito em 2016. Foi um dos principais responsáveis por eu trocar a aversão por paixão em relação à matemática. Muito obrigado!
Sensacional!!! Estudo Full-stack python. Já estou na reta final do front-end desenvolvendo projetos com React, Redux e StyledComponentes. Me preparo por aqui para o back-end em python. Tenho certesa que vou chegar bem preparado para entender conceitos mais avançados, pois quebrei muito a cabeça aqui para resolver esses exercícios. Hoje já tenho uma certa facilidade para resolver vários, mas com certeza valeu a pena demaais cada aula e exercicios estudados até aqui.
Caso alguém não queira usar o " enumerate " dá para fazer assim também :
for c in range(0, len(valores)):
print(f'Na posição {c} eu encontrei o numero {valores[c]}')
Com relação à duplicação de lista (26:22), isso também é possível pelo método copy():
a = b[:]
## OU...
a = b.copy()
ele fala sobre ela na aula sobre Dicionários(Que eu achei pouco úteis, já que o que um dicionário faz uma listá também pode fazer. )
@@inteligencianaoartificialb3349 , Sim, mas eles vão ter usos diferentes no dia a dia. E, quase sempre, vc acaba usando os dois juntos (dicionário dentro de lista, por exemplo).
e eu usando o python de 2022, valeu pelo curso irmão assisti todos os vides até aqui, me ajudou muito
Boa sorte em sua carreira
eu 2024
Estou fazendo o curso em 2024, tenho muitos recursos para estudo, e vou te falar tem questão que pra alguns é mais difícil e tem outras que acham mais fáceis , a logica esta relacionada a pratica, quanto mais pratica melhor sua lógica.
Fodaaaaaaaaa!!!!!!!!!!!!!! Não vejo a hora de contribuir você me ajudou muito como programador.
Já obteve ganho significativos como ads?
@@johnsykes4513 sim 🤑🤑🤑🤑
@Brazilian Guy os dois
@@johnsykes4513 já ganhou ou está ganhando dinheiro com programação? Se sim, e difícil?
@Brazilian Guy já está ou já ganhou dinheiro com programação? Se sim, e difícil?
Guanabara, A aula 3 de marketing digital esta bloqueado por direitos autorais, da uma olhada por favor.
Galera, deem likes para ele ver, por favor.
up
up
Up
Cara, esse curso ta maravilhoso, estou fazendo ele enquanto estudo a mesma linguagem na faculdade, está me ajudando muito.
Com certeza vou virar um apoiador!!
A forma como o professor Guanabara explica é perfeita. Um excelente orador, um excelente professor. Ele sabe como te manter focado na aula e não deixa você ficar desanimado, usando gestos e sorriso. Professor mais inteligente na área técnica de TI atualmente. Sei que o vídeo é antigo e as aulas também, mas conhecimento é algo atemporal.
Perto do fim... Passando pra agradecer os patrocinadores, e já tô sentindo um gostinho de saudade 😭.
Sinceramente, o Grings da programacao está aqui!!!
Que didática maravilhosa, fazendo uso dos recursos visuais para facilitar a compreensão.
Sensacional professor!
Ebaa consegui fazer uma matriz!!!
mapa = [['*']*20]*20
for x in range(0, 20):
for y in range(0,20):
print(mapa[x][y], end=' ')
print()
25:40 Ao lidar com listas em Python, a atribuição de uma lista a outra variável não cria uma cópia separada da lista original. Em vez disso, ambas as variáveis compartilham o mesmo conteúdo na memória.
O nome de uma lista em Python é um identificador para o local na memória onde a lista é armazenada. Quando atribuímos uma lista a outra variável, estamos apenas copiando o identificador da lista, não o conteúdo da lista em si.
Ambas as variáveis `a` e `b` apontam para o mesmo local na memória onde a lista está armazenada.
Portanto, qualquer modificação feita em uma variável afeta a outra, pois elas compartilham o mesmo conteúdo.
Atualização: A função id() pode ser usada para verificar esse comportamento. Ela retorna o identificador único (ou endereço) na memória para qualquer objeto. Usando id(a) e id(b), podemos confirmar que as variáveis `a` e `b` estão referenciando o mesmo objeto na memória, ou seja, os dois IDs serão iguais, indicando que ambas as variáveis apontam para o mesmo local. Esse id pode mudar a cada execução pois o Python otimiza a alocação de memória automaticamente
MANO genial. obrigado de vdd
Mesmo que eu tenha que rever todos os mundos, aula por aula, exercício por exercício, não vou parar, vou continuar até ter certeza de ter dominado todos os assuntos. Não tenha pressa de terminar, pois o processo é o que importa. Um troféu é uma taça vazia se o processo não fez sentido, então cara, continua e vai no seu ritmo!
Às vezes me frusto, por não compreender alguns conceitos, rapidamente. Entretanto, seguirei o seu exemplo. Não desistir, até dominar a linguagem. Obrigado, pelas palavras!
@@leonardolopes3317 eu desisti algumas vezes da programação antes por pensar dessa forma, de ter que aprender tudo rapidamente, mas agora eu coloquei na minha cabeça o seguinte, tudo leva muito tempo para aprender, seja falar, aprender a jogar um jogo, principalmente sendo competitivo, andar, desenhar ou o que for, então tá tudo bem, e outro pensamento que levo também é: daqui 5 anos, estudando todos os dias, eu com certeza vou aprender tudo o que eu não sei hoje, e isso pra daqui em diante.
Este ultimo exercício foi o mais desafiador para minha lógica até agora, mas depois que você pensa como você interpreta naturalmente se está certo ou errado uma expressão só é traduzir isto pro Python...
Eu apoiarei assim que for remunerada... Por mais Guanabaras ajudando assim. Nossa @gustavo Guanabara, me ajudou de tal forma! Muito Feliz em aprender!
No: 36:42 o Guanabara fala, volte pra entender melhor.
E eu assino em baixo, já voltei umas 15 vezes pra entender esse negócio, não tava fácil MN.
Tava quase desistindo já, mais eu insisto.
Comecei a entender melhor essas partes de listas.🎉
Bora pra luta 💪👊
Real irmão, na faculdade lista e dicionário foram mais difíceis pra mim do que função e classe
@@jandersondasilvaalves1077 pior que dicionários pra mim foi de boa, agora listas ? Oi ?? O negócio difícil MN.
@@jandersondasilvaalves1077 já acabou o curso MN ?? De python?
Tô quase acabando esse aqui.
MN o que vc acha que e bom estudar pra dár continuidade em python né curso aqui?? Só orientação a objetos ??
Tava procurando uma linguagem pra estudar por fora da faculdade, aí escolhi python.
vou ter que estudar umas coisas por fora, pra complementar.
Eu fiquei com uma dificuldade real nos exercícios 80 e 83. Fiquei uns 30 minutos batendo cabeça e não tinha escrito uma única linha de código, então deixei pra depois. Hoje, no dia seguinte, tentei de novo e, adivinha só? Eu consegui! Então, se tá com muita dificuldade, dá um tempo e esfria a cabeça, mas não desiste! Mesmo o código ficando "ruim" até mesmo pro seu nível agora, tenta! Já é um aprendizado...
ex079:
"""
Crie um programa onde o usuário possa digitar vários valores númericos e cadastre-os em uma lista.
Caso o número já exista lá dentro, ele não será adicionado.No final serão exibidos todos os valores
únicos digitados, em ordem crescente.
"""
numeros = []
while True:
num = int(input('Digite um valor'))
if num not in numeros:
numeros.append(num)
print('Valor adicionado com sucesso...')
else:
print('Valor duplicado! Não vou adicionar...')
while True:
resp = str(input('Quer continuar? ][S/N]')).upper()
if resp in 'SN':
break
else:
print('Resposta invalida. ', end='')
if resp in 'N':
break
print('=-='*15)
print(f'Voce digitou os valores {sorted(numeros)}')
Esse cara tem o dom de ensinar, porque como ele mesmo disse, há exercícios mais difíceis e outros mais fáceis tudo misturado, pois o que ele quer é ensinar os comandos diferentes. Por isso, esse é o melhor canal para aprender a programar.
Ex 079:
l = list()
while True:
n = int(input('Digite um valor inteiro pra ser adicionado. [0] para sair'))
if n == 0:
break
if n in l:
print('Este número já existe na lista')
else:
l.append(n)
l.sort()
print(l)
Valeu!
Aeeee.feliz pois o seu trabalho e muito bom.e eu estou começando a faculdade e vc me ajuda muito.cada vez que tenho alguma dúvida venho assistir os vídeos.e ao poucos estou aprendendo.obrigada.
eu tbm kkkkkkkk
Exercício 79 eu fiquei orgulhoso de mim mesmo de ter conseguido, então segue minha resposta:
lista = []
n = 0
o = 0
while True:
n = int(input('Digite um valor: '))
if n in lista:
print('Valor duplicado.')
o = (str(input('Quer continuar?(S/N)')))
if o in "Nn":
break
else:
lista.append(n)
print ('Valor adicionado!')
o = str(input('Quer continuar? (S/N) '))
if o in "Nn":
break
lista.sort()
print(f'Você digitou os valores {lista}')
Faz curso de linguagem c, Guanabara
Q a galera apoia
Ficarei extremamente feliz em contribuir com esse curso, percebo que as visualizações caíram bastante, Não sei como pois suas aulas são incríveis e eu aprendi muito com elas.
Conforme as aulas avançam, só ficaram os que persistiram.
Guilherme Teixeira de Freitas
Pois é, muitos desistiram quando a coisa começou a dificultar e não foram atrás. Eu também tive um pouco de dificuldade em algumas partes, mas nunca pensei em desistir.
Meu único medo é que por falta de visualizações, ele cancele o curso:/
Espero que não cancele. As aula são muito úteis!
esse 80 foi pesado, depois de algumas horas desisti. Sua solução foi muito elegante! Parabéns
Ex 083:
expressao=str(input('Digite uma expressão númeria: '))
primeiro = expressao.count(')')
segundo = expressao.count('(')
if primeiro == segundo:
print('Sua expressão é válida')
else:
print('Sua expressão é inválida')
Alto nível essa aula: bem elaborada, bem exemplificada, o tema de game, as animações, muito bom mesmo.
Que aula incrivel!! Conteudo maravilhoso e recurso grafico de muita qualidade. Parabens!!!
Aula sensacional! Obrigada professor e todos os gafanhotos que ajudaram na colaboração! :) Bora fazer esses desafios \o/
Eu tava demorando pra entende o método de maior e menor sem usar os atalhos do python, agora que consegui entender vendo a resolução do desafio 78 tá bem mais fácil.
Mundo Obrigador Por estar disponibilizando esta curso! Antes eu queria saber so de jogar no pc, e Hoje eu instalei o Linux e quero ser um Progamador! Graças ao Diolinux e ao Curso em Video! Obrigado de Coração!
Conseguiu se tornar programador ?
Fiz de um jeito bem simples o desafio 83.
expr = str(input('Digite uma expressão: '))
a = expr.count('(')
b = expr.count(')')
if a != b:
print('Sua expressão é invalida.')
else:
print('Sua expressão é válida.')
Também pensei assim, mas ai se vc colocar a expressão ((x+y)*2x)) -7*(x+(3y+2), a vai receber 4 e b vai receber 4 também, dando como válida a expressão, sendo que não esta válida.
Parabéns Guanabara e equipe do curso em vídeo ! Vídeos com didática de muito boa qualidade.
Os exercícios do Guanabs são muito bons, realmente tem tudo que ele passou ali
Me salvando nos exercícios da faculdade. Obrigada!
Esse é o melhor professor de programação do mundo!😁👏👏👏
Aquele momento do curso que o conteúdo mais difícil é o mais longo....
E o professor junto a equipe conseguiram tornar isso algo legal e animador.
😀✊
Quem diria que 🍷, 🍕 e 🍮 seriam tão importes para aprender uma linguagem de programação interpretada e de alto nível 😂😂😂
Já tentou adicionar elementos na lista usando o comando input ? Eu tentei e não consegui , será que é possível ?
@@cesaroliveira9051 Como assim? Mande o codigo aqui
estou passando por varios problemas mas sempre venho á assistir essas aulas claros que eu não entendo os exercicos mas entendo os comando
"É gente correndo pelada" KKKKKKKKKKKKKKKK perdi tudo aqui. O Guanabara é o melhor professor que tem, cara.
Caralho, a cópia da lista foi mt mindblowing. top demais.
# Desafio 078
lst, aux = list(), list()
numMaior, numMenor, counter = None, None, 0
# Preenche a lista com 5 valores numericos e a exibe
for i in range(0, 5):
lst.append(float(input(f'Digite o valor {i+1}: ')))
print(lst)
# Obtem o valor maior e o menor
numMaior, numMenor = max(lst), min(lst)
# Faz a contagem das vezes em que o maior valor aparece na lista
for i in range(0, len(lst)):
if lst[i] == numMaior:
aux.append(i)
print(f'O maior valor e {numMaior} e ele esta nas posicoes {aux}.')
# Faz a contagem das vezes em que o menor valor aparece na lista
aux = list()
for i in range(0, len(lst)):
if lst[i] == numMenor:
aux.append(i)
print(f'O menor valor e {numMenor} e ele esta nas posicoes {aux}.')
valeu me ajudou, tava conseguindo mostrar todas as posicoes dos num min e max, so a primeira em que aparecia
"você não ta com pressa de terminar, você está com vontade de aprender..."
melhor professor, cara. Sério
eu sempre fico fazendo as mesmas coisas que o professor faz, ai eu olho e penso:'' e se eu tentar fazer isso?'' ás vezes da muito certo skks
Mais uma aula top
Orgulhoso: todos os desafios feitos! O desafio 80 demorei dois dias quebrando a cabeça, mas consegui, sem olhar a resposta no exercício, VALEEEEEU PROFESSOOOOR!
valores = []
for i in range(5):
valores.append(int(input(f'Digite um valor na posição {i}: ')))
for v, c in enumerate(valores):
if v == 0:
menor = maior = c
if menor > c:
menor = c
if maior < c:
maior = c
print(f'Você digitou os valores {valores}')
print(f'O menor valor que você digitou foi {menor}. E aparece nas posições ', end='')
for i, c in enumerate(valores):
if menor == valores[i]:
print(i, end='...')
print(f'
O maior valor que você digitou foi {maior}. E aparece nas posições ', end='')
for d, b in enumerate(valores):
if maior == valores[d]:
print(d, end='...')
Só tenho a agradecer! Obrigado Guanabara e Equipe
melhor professor
Ex 083:
ex = list(input('Digite a expressão:'))
total = ex.count('(') + ex.count(')')
if total % 2 == 0:
print('Expressão válida')
else:
print('Expressão ínvalida')
desafio 078:
num = list()
for d in range(0, 5):
num.append(int(input('Digite um numero: ')))
print(f'O maior valor da lista é {max(num)} e está na posição {num.index(max(num))}')
print(f'O menor valor da lista é {min(num)} e está na posição {num.index(min(num))}')
o problema é que ele não mostra a posição de mais de 1 número igual
exercício 83:
expressão = str(input('digite uma expressão'))
direita = expressão.count(')')
esquerda = expressão.count('(')
if esquerda == direita:
print('a expressão está corrta')
else:
print('a expressão está errada')
só vendo o count da sua resposta conseguir fazer o meu.
conta ou roubei?kkk
Gustavo,seria legal se você desse cursos de C++ e Arduino. Dem like pra ele ver
Pessoal vindo aqui nesta aula pra comentar que já estou craque em Python. No momento, desenvolvendo meu primeiro BOT para envio de emails em massa
Teve dois anúncios: um relacionado ao masterclass (quase 2 minutos) o qual eu assisti inteiro por ser inglês e outro de uma pasta de dente que durou apenas 15 segundos. Fazendo o possível para ajudar com a monetização do vídeo.
Que show de didática, conhecimento, humildade, simpatia... Guanabara é show demais, obrigada! Amando as aulas e exercícios de Py e os comentários da galera
Alguém percebeu que a descrição está errada? KKKKKK, Like Guanabara, graças a você estou evoluindo em Python. Obrigada!
Eu tenho uma colinha comigo das anotações das aulas me ajuda bastante nas duvidas
vo contar pra vcs eu sofri no 80 mas consegui fazer numeros[-1]:
print('Adicionado na última posição.')
numeros.append(num)
elif numeros[0] < num
Em quais linguagens você programa?
Guilherme to começando a aprender em python agora kkkkk
@@barbaragualberto6981 Primeira linguagem é sempre a mais difícil, aprendi javascript, depois node, e agora python, comecei a estudar Java mais dei uma parada nos estudos porque tenho que acabar o front-end do site pra depois fazer o app dele, quando acabar vou ter mais tempo pra focar no app.
Guilherme ah que bom kkkk parabens
Uma dica mesmo que mesmo que você não tenha pedido.
você usou muitos if/elif e comparou cada posição individualmente, como são 5 valores é possível fazer, porém em uma situação com uma repetição maior ficaria inviável.
A minha dica seria que sempre que um número for adicionado, o programa comparasse ele com os existentes na lista e caso ele seja menor ou igual a um existente, o novo valor toma a posição do atual e o "empurra" para uma nova.
Não estou dizendo que seu código está errado ou te criticando, só uma dica mesmo. Fica na paz
ex83:
eq = str(input('Digite uma expressão: '))
if eq.count('(') == eq.count(')'):
print('A expressão é válida.')
else:
print('A expressão é inválida.')
Muito bom seus vídeos mano. Excelente!!!!!
voce é um deus. Te amo, guanabara. Obrigado.
Desafio 78
val = list()
for c in range(0, 5):
n = int(input('Digite um número: '))
val.append(n)
print(f'Você digitou os valores', *val, sep=' ')
print(f'O maior valor digitado foi {max(val)} na posição {val.index(max(val))}.
'
f'O menor valor digitado foi {min(val)} na posição {val.index(min(val))}')
Desafio 79
val = list()
while True:
n = int(input('Digite um número: '))
if n in val:
pass
if n not in val:
val.append(n)
conf = str(input('Quer continuar? [S/N] ')).lower()
if conf == 's':
continue
if conf == 'n':
break
print(sorted(val))
Desafio 80 (não consegui fazer sozinho)
val = list()
for c in range(0, 5):
n = int(input('Digite um número: '))
if c == 0 or n > val[-1]:
val.append(n)
else:
pos = 0
while pos < len(val):
if n
78:
ct = -1
vl = []
for cont in range(1,6):
vl.append(int(input('Digite um valor: ')))
print(f'Você digitou os valores {vl}')
print(f'O maior valor é {max(vl)} que está nas posições', end=' ')
for c in vl:
ct = ct + 1
if c == max(vl):
print(ct, end='... ')
ct = 0
print(f'
O menor valor é {min(vl)} que está nas posições', end=' ')
for c in vl:
ct = ct + 1
if c == min(vl):
print(ct, end='... ')
79:
r = ''
lista = []
while True:
n = int(input('Digite um valor: '))
if n in lista:
print('Valor duplicado! Não será adicionado...')
else:
lista.append(n)
print('Valor adicionado com sucesso!')
while True:
r = str(input('Deseja continuar? [S/N] ')).strip().upper()
if r == 'S' or r == 'N':
break
print('Resposta inválida.')
if r == 'N':
break
lista.sort()
print(f'Você digitou os valores {lista}')
82:
r = ' '
lista = []
pares = []
impares = []
while True:
n = int(input('Digite um valor: '))
lista.append(n)
if n % 2 == 0:
pares.append(n)
else:
impares.append(n)
while True:
r = str(input('Deseja continuar? [S/N] ')).strip().upper()
if r == 'S' or r == 'N':
break
print('Resposta inválida.')
if r == 'N':
break
print(f'Você digitou os valores {lista}
Os pares são {pares}
E os ímpares {impares}')
078
for i in range(0, 5):
l.append(int(input('Digite um numero: ')))
print(f'Maior valor digitado eh {max(l)} e na posicao {l.index(max(l)) + 1}')
print(f'O menor valor digitado eh {min(l)} e esta na posicao {l.index(min(l)) + 1}')
minha solução da 31:11, tentem fazer sozinhos antes :D
print('Digite números, se quiser parar digite [PARAR]')
print('='*46)
vetor = []
while True:
valor = input('Digite aqui: ')
if valor.isdigit() == True:
vetor.append(int(valor))
else:
if valor.upper() == 'PARAR':
break
else:
print('Inválido! Tente novamente!')
print('='*23)
print(f'Você digitou os valores \033[1;33m{sorted(vetor)}\033[m')
Fantástico!
meu codigo pro 80:
lista = []
j = 0
k = 0 # posição no insert
for c in range(0, 8):
n = int(input('Digite um valor:'))
if c == 0:
lista.append(n)
print(lista)
else:
while True:
if j == len(lista) or n < lista[j]:
lista.insert(j, n)
print(lista)
print('-=-' * 10)
j = 0
break
j += 1
print(lista)
O primeiro exercício eu fiz certinho rapidão, me achando todo todo eis que vem o Guanabara e diz que tem que mostra mais de 1 posição caso os número forem repetidos... T_T
Eu travei com isso
Fácil usar um If e printar todas as posições do número procurado
eu fiz um laço com enumerate e fiz um vetor que salva a posição de todo numero que for igual ao maior da lista
@@rafaelfernandes9876 como assim?
Ajudou muito!!! parecia difícil, mas com a sua ajuda consegui resolver😅Obrigado @@amagami1008
Eu assistindo em 2024, Salvando Muito!! Obrigado Professor!!
38:19
É GENTE CORRENDO PELADA, UM ABSURDO!
DKSAODKOASDKOAKSDOASKDOAKOD
hahahahaha
Obrigado a todos os colaboradores e ao Guanabara por esse curso incrível!
A aula teórica tava suave, foi só chegar na prática que o meu cérebro queimou
demorei mas consegui 😁, pode não ser a melhor forma mas dá certo para quem não sabe nada já é um começo!
lista1 = list()
c = 0
m = 0
for i in range(0, 5):
lista1.append(int(input(f'Digite um valor para a Posição: ')))
print('=-'*30)
print(f'Você digitou os valores {lista1}')
print(f'O maior valor digitado foi {max(lista1)} nas posições', end=' ')
c = max(lista1)
for n, v in enumerate(lista1):
if v == c:
print(f'{n}...', end=' ')
m = min(lista1)
print(f'
O menor valor digitado foi{m} nas posiçoes ', end=' ')
for n, v in enumerate(lista1):
if v == m:
print(f'{n}...', end=' ')
RESUMO - Só colar e rodar teu código:
print('Manipulação de Listas')
print('')
lista = ['carro' , 'lanchas' , 'moto' , 'jetski' , 'pedestres' , 'banhistas']
print(f'→ Lista Normal: {lista}')
print('')
lista.append('golf')
print(f'1) → lista.append("golf"): {lista}')
print(' • Serve para ADICIONAR algum item no final')
print('')
lista.insert(2,'Adicionei aqui')
print(f'2) → lista.insert(2,"Adicionei aqui"): {lista}')
print(' • Serve para ADICIONAR algum item na posição desejada, ele não vai substituir mas vai tomar o lugar do que ja estava sem remover.')
print('')
lista.pop(2)
print(f'3) → lista.pop(2): {lista}')
print(' • Serve para REMOVER algum item na posição desejada. Caso estiver sem referência dentro "lista.pop()", removerá o último.')
print('')
lista.remove('moto')
print(f'4) → lista.remove("moto"): {lista}')
print(' • Serve para REMOVER algum item pelo texto ou número EXATO como está na lista.')
print('')
lista.remove('jetski')
print(f'5) → lista.remove("moto"): {lista}')
print(' • Serve para REMOVER algum item pelo texto ou número EXATO como está na lista.')
print('')
intervalo = list(range(4,11))
print(f'6) → list(range(4,11)): {intervalo}')
print(' • Serve para CRIAR uma lista com o intervalo desejado.')
print('')
valores = [8,2,5,4,9,3,0]
valores.sort()
print(f'7) → valores = [8,2,5,4,9,3,0] → valores.sort(): {valores}')
print(' • Serve para ORDENAR os valores de uma lista do menor para o maior.')
print('')
valores = [8,2,5,4,9,3,0]
valores.sort(reverse=True)
print(f'8) → valores = [8,2,5,4,9,3,0] → valores.sort(reverse=True): {valores}')
print(' • Serve para INVERTER a ordenação dos valores de uma lista, do maior para o menor.')
print('')
contagem = len(valores)
print(f'9) → contagem = len(valores): {contagem}')
print(' • Serve para CONTAR a quantidade de valores de uma lista.')
print('')
Antes de especificar que deveria usar lista eu fiz dessa forma:
expressao = str(input('Digite a expressao: '))
contagem_aberto = expressao.count('(')
contagem_fechado = expressao.count(')')
if contagem_aberto == contagem_fechado:
print('Sua Expressao esta correta!')
else:
print('Sua Expressao está errada!')
Tem alguma vantagem ou caso especifico em trabalhar com tupla e trabalhar com lista? A lista me pareceu melhor de trabalhar do que as tuplas.
Dependendo da aplicação Tuplas são mais vantajosas, ou listas
O exercício 83 tentei fazer com que o programa checasse se tem parênteses aberto e fechado, tempos depois eu descobri que isso pouco importa, pq se tiver dois parênteses abrindo e um fechando o programa ia dizer que a expressão estava correta. Então o objetivo era saber quantos parênteses estavam abertos e esse número tinha que ser igual ao número de parênteses fechados. Assim ficou meu programa:
parenteses = list()
parenteses.append(str(input('Digite uma expressão: ')))
for p in parenteses:
a = p.count('(')
b = p.count(')')
if a == b:
print('Expressão correta.')
else:
print('Expressão errada.')
usei a mesma lógica
cont = cont2 = 0
exp = str(input('Digite uma expressão matemática: '))
if '(' in exp:
cont += 1
if ')' in exp:
cont2 += 1
print('Analisando.....')
if cont == cont2:
print('expressão correta!')
else:
print('Expressão errada!')
Meu ex80 ficou assim :
lista = []
numero = ''
cont = 0
while cont != 5:
numero = int(input('Digite um número: '))
if lista == []:
lista.append(numero)
print('Número adicionado na lista')
elif max(lista) < numero:
lista.append(numero)
print('Adicionado ao final da lista')
elif min(lista) > numero:
lista.insert(0, numero)
print('Adicionado ao início da lista')
else:
for p, n in enumerate(lista):
if n > numero:
lista.insert(p, numero)
print(f'Número {numero} adicionado na posição {p}')
break
if n == numero:
break
cont = cont + 1
print('A lista de números digitados em ordem é:', lista)
me ajudou mt, valeu
# Desafio 083
exp = str(input("Digite uma expressão matemática: "))
counter = 0
for letra in exp:
if letra in "()":
counter += 1
if counter % 2 == 0:
print("Expressão válida.")
else:
print("Expressão inválida.")
Minhas soluções:
#Ex 078
valores = []
for n in range(5):
valores.append(int(input(f'Digite um valor para a posição {n}: ')))
print('=-'*30)
print('Você digitou os valores', valores)
print(f'O maior valor digitado foi {max(valores)} nas posições', end='')
for p in range(5):
if valores[p] == max(valores):
print(f' {p}...', end='')
print(f'
O menor valor digitado foi {min(valores)} nas posições', end='')
for p in range(5):
if valores[p] == min(valores):
print(f' {p}...', end='')
#Ex079
valores = []
continua = 'S'
while continua[0] != 'N':
valor = int(input('Digite um valor: '))
if valor not in valores:
valores.append(valor)
print('Valor adicionado com sucesso...')
else:
print('Valor duplicado! Não vou adicionar...')
continua = input('Quer continuar? [S/N] ').upper()
valores.sort()
print('-='*30)
print(f'Você digitou os valores {valores}')
#Ex080
valores = []
for n in range(5):
valor = int(input('Digite um valor: '))
if not valores:
valores.append(valor)
print('Adicionado ao final da lista...')
elif valor > valores[-1]:
valores.append(valor)
print('Adicionado ao final da lista...')
else:
for p, v in enumerate(valores):
if valor
Bom, a última está correta, mas do jeito que eu tinha feito não precisava de listas... então refiz dividindo em duas listas e comparando o len() delas:
#Ex083
expressao = input('Digite a expressão: ')
abre = []
fecha = []
validade = 'correta'
for c in expressao:
if c == '(':
abre.append(c)
elif c == ')':
fecha.append(c)
if len(fecha) > len(abre):
validade = 'errada'
break
if len(fecha) != len(abre):
validade = 'errada'
print(f'Sua expressão está {validade}!')
Se considerar a String como uma lista de caracteres, você usa uma lista na primeira sim =)
expressao = input('Digite a expressão: ')
validade = 'correta'
peso = 0
for p in expressao:
if p == '(':
peso += 1
else:
peso -= 1
if peso < 0: validade = 'errada'
if peso != 0: validade = 'errada'
print(f'Sua expressão está {validade}!')
Quis dizer que sai do escopo da aula de hoje. Coloquei a lista sem necessidade, como você mesmo pôde perceber. Por isso fiz o exercício novamente do outro jeito.
no meu script? como? testou ele?
o peso é verificado dentro do loop. Estando em 0 não tem colchetes aberto... se vc usa ")" vai resultar em -1. Estando -1, vai acusar que está errado. Mesmo que depois tenha "(", já era, vai estar errado, mesmo que o número de "(" e ")" seja o mesmo.
Ex 078:
l = []
for c in range(0,5):
l.append(int(input('Digite um valor')))
print(f'Maior valor: {max(l)}')
print(f'Menor valor: {min(l)}')
for pos, valor in enumerate(l):
print(f'Número {valor}, encontrado na posição: {pos}')
Só faltava linguagem C para o canal ficar mais TOP.😍
Débora Santtos né o q
Ne Verdade
C para que? , c++ seria bem mais útil.
Esse é o melhor professor do mundo !
guanabara: Não fala "Aipou", por favor, fala certinho..."
Also guanabara: Enumereiti...
Que nem o BRKSedu falando "Diliei"
exercício 78:
valores=list()
for cont in range(0, 5):
valores.append(int(input("Digite um valor: ")))
print(f'O maior valor fornecido foi {max(valores)}')
print(f'O menor valor fornecido foi {min(valores)}')
hmmm nem ta tão complicado
"dai a gente vai colocar lista dentro de lista"
NOW WE ARE TALKING
Incrível o conteúdo, super didático. Parabéns e obrigado!
Ae meu, quando acabar faz linguagem c
Desafio 81
l=[]
while True:
n=int(input('Digite um número inteiro para adiciona-lo[0 PRA PARAR]'))
l.append(n)
if n ==0:
break
print(f'Você adicionou {len(l)-1} valores à lista')
if 5 in l:
print('O número 5 foi adicionado')
else:
print('Você não adicionou o número 5')
l.sort(reverse= True)
print(f'Os valores que você digitou em ordem decrescente ficam:{l}')