Ir para conteúdo
Fórum Script Brasil

ThiagoD

Membros
  • Total de itens

    12
  • Registro em

  • Última visita

Sobre ThiagoD

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

ThiagoD's Achievements

0

Reputação

  1. ThiagoD

    Erro no if

    Voce não pode fazer assim: if letra.lower() == 'a' or 'e' or 'i' or 'o' or 'u': O correto seria fazer assim: if letra.lower() == 'a' or letra.lower() == 'e' or letra.lower() == 'i' or letra.lower() == 'o' or letra.lower() == 'u': Mas nesse caso tem uma forma mais facil: if letra in 'aeiou': O código completo fica assim: while True: letra = str(input('=> ')).strip() if len(letra) == 0: print('Nenhum valor foi digitado') elif not letra.isalpha(): print('Digite apenas letras!') elif len(letra) > 1: print('Digite apenas uma letra!') else: if letra in 'aeiou': print('vogal') else: print('consoante') Se todo o conteudo da variavel letra for uma letra, a funçao isalpha() retorna True! leia mais aqui: https://docs.python.org/3/library/stdtypes.html#str.isalpha eu só esqueci de usar o lower()
  2. Olá pessoas! Vamos supôr que eu execute um app, software ou programa qualquer... esse programa vai criar um processo na memória... nesse processo, serão criadas variáveis que o programa irá utilizar, certo? Como obtenho o endereço de memória de uma variável específica criada por esse processo (ou programa) e como altero o valor dessa variável (pelo seu endereço)... USANDO PYTHON ?? O Cheat Engine faz isso. Ele pede um valor e pede pra você selecionar um processo na memória. Então ele procura esse valor nos endereços de memória do processo selecionado. Mas não quero usar o programas como o Cheat Engine, quero aprender em python Obrigado!
  3. na verdade, isso não é um modulo/biblioteca, ne? isso é uma ferramenta para desenvolver sites com python, eu acho. Mas acho que pode ser um caminho sim... obrigado! hmm... olha, já estou fazendo um curso, mas... posso dar uma olhada niso qualquer hora. Obrigado!
  4. Olá amigos!Gostaria que me ajudassem… estou estudando python, ainda sou um iniciante… aprendi sobre entrada e saida de dados, estruturas condicionais/de repeticao, variaveis compostas… etc. Estou estudando funçoes, agora.Gostaria que me dessem uma lista de modulos/pacotes/bibliotecas (não entendo exatamente a diferenca entre esses termos) que um iniciante deve estudar depois que aprender o basico da linguagem…Meu objetivo é arrumar um emprego como programador python. Quais bibliotecas devo aprender para conseguir um emprego no brasil? Um emprego qualquer como programador python?
  5. não entendi o numero inteiro na entrada... fiz assim: ''' Recebe um texto por input e retorna um inteiro representando a quantidade de caracteres da maior palavra no texto ''' maior = k = 0 texto = str(input('=> ')) while True: if ' ' in texto: if texto[k] == ' ': if len(texto[:k]) > maior: maior = len(texto[:k]) texto, k = texto[k+1:], 0 else: k += 1 elif len(texto) > maior: maior = len(texto) else: break print(maior)
  6. Cara, você quer criar um algoritmo q use o comando REPITA e, a cada repetiçao adicione uma compra para um dos filhos? Ficou meio confusa a sua pergunta... tenta explicar de novo dando os detalhes corretamente... salve!
  7. Nossa, achei que não fosse conseguir fazer... eu já tinha estudado sobre concatenaçao e manipulaçao de strings mas, ainda não tinha praticado ou resolvido nenhum exercicio utilizando isso... Gostaria de ver a soluçao do autor do tópico para esse problema. // Algoritmo criado para o desafio do forum Script Brasil. // O usuario deve digitar um numero inteiro de 5 digitos. O algoritmo devera // verificar se esse numero contem algum numero impar e, se houver, devera // extrair esse(s) numero(s), deixando apenas os numeros pares para serem // exibidos na tela. Caso não tenha nenhum numero par, devera ser exibida apenas // a menssagem: "Nenhum Par Encontrado!". // Algoritmo criado por ThiagoD. algoritmo "Extraia_Os_Pares" var num,result : CARACTERE a : INTEIRO inicio REPITA REPITA // Esse bloco se repetira ate que o usuario digite... LIMPATELA // um numero valido. ESCREVA(" Digite um Número Inteiro com 5 Digitos: ") LEIA(num) SE não(COMPR(num)=5) então ESCREVAL(" Número Inválido!") LEIA(num) FIMSE ATE(COMPR(num)=5) result:="" PARA a:=1 ATE 5 FACA // Aqui, vamos verificar cada numero. SE (ASC(COPIA(num,a,1))%2=0)então // Cada numero par que for encontrado... result:=result+COPIA(num,a,1) // sera concatenado a variavel 'result' FIMSE FIMPARA SE não(result="") então // Se verdadeiro, vamos imprimir a... ESCREVA(" Resultado: ",result) // variavel 'result' na tela. LEIA(num) // Se não, uma menssagem sera exibida. SENAO ESCREVA(" Nenhum Par Encontrado! ") LEIA(num) FIMSE ATE(0>1) fimalgoritmo
  8. Deixa eu ver se eu entendi... então, se eu digitar o numero que voce usou como exemplo (12578), o resultado que deve ser imprimido na saida seria o numero abaixo? Resultado: 157
  9. Ola! não tenho certeza se entendi bem a forma como o algoritmo deveria ficar, mas acho que voce quer algo mais ou menos assim... Vale observar que eu não realizei muitos testes para encontrar erros, se alguém encontrar algum erro, gostaria que fosse postado aqui... e tambem, eu não investi muito tempo para desenvolver um otimo algoritmo, então, e bem possivel que existam formas bem mais eficientes de se reescrever esse codigo. // Algoritmo criado para tópico do forum Script Brasil // O objetivo desse algoritmo e receber dados de, no maximo, 20 pessoas e, // apartir desses dados, apresentar estatisticas na saida. // Algoritmo criado por ThiagoD. algoritmo "EntrevistaPessoas" var A,B,TOTALDEMULHERES,TOTALDEHOMENS,NASCAPART2000,RENDAACIMADE500,MAISDE1FILHO : INTEIRO NOMES : VETOR[0..19] DE CARACTERE IDADE : VETOR[0..19] DE INTEIRO SEXO : VETOR[0..19] DE CARACTERE FILHOS : VETOR[0..19] DE INTEIRO RENDA : VETOR[0..19] DE REAL inicio A:=-1 REPITA // Esse bloco vai se repetir e coletar todas as informaçoes necessarias... A:=A+1 // ate que chegue ao numero maximo de entrevistados, ou o usuario deixe... LIMPATELA // o campo "Nome:" em branco. ESCREVAL(A+1,"° Entrevistado") ESCREVAL("") ESCREVA(" Nome: ") LEIA(NOMES[A]) ESCREVA(" Idade: ") LEIA(IDADE[A]) ESCREVA(" Sexo: ") LEIA(SEXO[A]) // E importante ressaltar que, o campo "Sexo:" deve ser preenchido com... ESCREVA(" Filhos: ") // os caracteres 'F' para mulheres e 'M' para homens, caso contrario... LEIA(FILHOS[A]) // ocorrera um erro. ESCREVA(" Renda: ") LEIA(RENDA[A]) ATE(A=19) OU (NOMES[A]="") A:=0 ENQUANTO não(NOMES[A]="") FACA // Esse bloco se repete e manipula os dados obtidos afim de... SE (SEXO[B]="F") então // obter as estatisticas que serao impressas na saida. TOTALDEMULHERES:=TOTALDEMULHERES+1 FIMSE SE (SEXO[B]="M") então TOTALDEHOMENS:=TOTALDEHOMENS+1 FIMSE SE não(IDADE[B]<18) então NASCAPART2000:=NASCAPART2000+1 FIMSE SE (RENDA[B]>=500) então RENDAACIMADE500:=RENDAACIMADE500+1 FIMSE SE (FILHOS[B]>0) então MAISDE1FILHO:=MAISDE1FILHO+1 FIMSE A:=A+1 B:=B+1 FIMENQUANTO LIMPATELA ESCREVAL("") // Por fim, as estatisticas serao imprimidas... ESCREVAL(" ESTATISTICAS") ESCREVAL(" Total de entrevistados:",A) ESCREVAL("") ESCREVAL(" Mulheres: ",TOTALDEMULHERES/A*100:3:2) ESCREVAL(" Homens: ",TOTALDEHOMENS/A*100:3:2) ESCREVAL(" +De R$500,00:",RENDAACIMADE500) ESCREVAL(" +De 1 Filho: ",MAISDE1FILHO) ESCREVAL(" Apartir de 2000:",NASCAPART2000) fimalgoritmo
  10. Bom, já faz algum tempo que esse tópico foi criado e, provavelmente o hzez já encontrou a soluçao para o problema, porem, acho interessante deixar uma resposta afim de praticar e deixar registrado. Acho que e mais ou menos isso que o hzez pediu... mas... eu pensei agora... e, acho que seria interessante criar uma soluçao para o caso de terem competidores com o mesmo tempo... por exemplo: 1- tempo: 3.34 2- tempo: 4.42 3- tempo: 4.98 4- tempo: 4.98 Assim, o algoritmo teria que identificar os tres melhores tempos e imprimir 4 competidores. Seria legal mas, no momento, estou com preguiça hehehe deixa pra depois... // Algoritmo criado para ajudar membro do forum Script Brasil. // Esse algoritmo recebe cinco valores ("tempos") de cinco participantes diferentes e... // imprime os tres menores tempos (em ordem crescente) na saida. // Escrito por ThiagoD Algoritmo "MostraMelhoresColocados" Var TEMPOS : VETOR[0..4] DE REAL A,B : INTEIRO C : REAL Inicio PARA A:=0 ATE 4 FACA // esse trecho vai repetir 5x e guardar o tempo de cada participante no vetor TEMPOS LIMPATELA ESCREVA("Digite o tempo do",A+1,"o Participante: ") LEIA(TEMPOS[A]) FIMPARA PARA A:=0 ATE 3 FACA B:=A+1 REPITA SE (TEMPOS[A]>TEMPOS[B]) então // se o tempo guardado no indice A for maior q o tempo do indice B C:=TEMPOS[A] // o valor do indice A sera substituido pelo valor do indice B, e B recebera o valor de A TEMPOS[A]:=TEMPOS[B] // mas, para isso, usaremos a variavel C para guardar temporaria mente o valor do indice A TEMPOS[B]:=C FIMSE B:=B+1 ATE(B>4) FIMPARA LIMPATELA PARA A:=0 ATE 2 FACA// por fim, vamos imprimir os valores dos 3 primeiros indices na saida. ESCREVAL(A+1,"o Colocado - Tempo: ",TEMPOS[A]) FIMPARA Fimalgoritmo
  11. Legal esse desafio, investi algumas horas pra desenvolver a logica... O algoritmo que estou postando foi escrito no VisuAlg 3.0... Espero receber criticas construtivas sobre formas alternativas ou mais eficientes de como desenvolver a logica, como organizar melhor o algoritmo, como fazer comentarios melhores e etc... as criticas construtivas serao bem-vindas... valeu! ///////////////////////////////////////////////////////////////////////////// // Desafio base 2, postado no site: www.scriptbrasil.com.br // Objetivo: Imprimir na saida, em ordem cresccente, os 10 primeiros numeros // pares e os 10 primeiros numeros primos a partir de 1. // por ThiagoD ///////////////////////////////////////////////////////////////////////////// algoritmo "Pares_e_Primos" var PARES : vetor[0..9] de inteiro PRIMOS : vetor[0..9] de inteiro A,B,NUM,D,F,X : inteiro inicio NUM:=1 // A variavel 'NUM' ira representar o numero que estamos verificando para saber se e par/primo. ENQUANTO (PARES[9]=0) OU (PRIMOS[9]=0) FACA // Enquanto verdadeira, essa condiçao significa que ainda não temos todos os 10 numeros pares/primos NUM:=NUM+1 SE (PARES[9]=0) E (NUM%2=0) então // Se verdadeiro, significa que ainda não temos todos os 10 numeros pares e, o numero que esta sendo verificado ('NUM') é par. PARES[A]:=NUM // Sendo ('NUM') um numero par, vamos adiciona-lo a lista de numeros pares (vetor 'PARES'). A:=A+1 // o indice ('A') recebe +1 para que o proximo numero adicionado não sobreescreva um numero já existente. FIMSE SE (PRIMOS[9]=0) então // Se verdadeiro, significa que ainda não temos todos os 10 numeros primos. D:=1 F:=0 // Quando 'NUM' for divisivel por 'D' e não houver resto, 'F' recebera +1. ENQUANTO não(D>NUM) FACA // Se verdadeiro, significa que o divisor ('D') não e maior que o dividendo. SE (NUM%D=0) então // Se verdadeiro, significa que temos um numero ('NUM') divisivel por 'D', então... F:=F+1 // 'F' recebe +1 FIMSE D:=D+1 // 'D' vai representar o divisor pelo qual 'NUM' sera dividido, afim de saber por quais numers 'NUM' pode ser dividido sem deixar resto. FIMENQUANTO SE (F=2) então // Se verdadeiro, significa que 'NUM' e um numero primo, logo... PRIMOS[B]:=NUM // num sera adicionado ao indice 'B', da lista de numeros primos (vetor 'PRIMOS') B:=B+1 // A mesma logica da linha 18, mas referente ao vetor PRIMOS. FIMSE FIMSE FIMENQUANTO ESCREVA("Números Pares:") PARA X:=0 ATE 9 FACA // Este trecho imprime todos os numeros pares... ESCREVA(PARES[X]) X:=X+1 FIMPARA ESCREVAL("") // Apenas para pular uma linha... ESCREVA("Números Primos:") PARA X:=0 ATE 9 FACA // Este trecho imprime todos os numeros primos... ESCREVA(PRIMOS[X]) X:=X+1 FIMPARA fimalgoritmo
  12. Ola pessoas. Estou com o objetivo de aprender a programar em Python. Mas primeiro, lendo pela internet, percebi que o primeiro passo para um iniciante em programaçao (como eu), seria aprender logica de programaçao. Na internet, achei um canal de cursos em video (que e um otimo canal, diga-se de passagem) e fiz um curso com 15 aulas em video de logica de programaçao. não vou deixar o link, pois ainda não li as regras aqui do forum, logo, não sei se seria permitido deixar links de outros sites. Bom... o contexto e mais ou menos esse... eu já estou praticando logica há uns dois (ou tres) meses. Eu uso o VisuAlg 3.0. Eu queria saber se eu já estou pronto para começar um curso de Python? Como esse e um mundo novo pra mim, eu não tenho muita noçao para saber se estou preparado ou não. Como eu posso saber se eu já desenvolvi uma boa logica de programaçao para que finalmente eu possa iniciar em Python? Apesar de ser apenas um amante de programaçao, eu não gostaria de começar fazendo as coisas de forma errada. já agradeço...
×
×
  • Criar Novo...