diff --git a/Desafio_12.ipynb b/Desafio_12.ipynb index 32aacf3..5b464a7 100644 --- a/Desafio_12.ipynb +++ b/Desafio_12.ipynb @@ -1,65 +1,110 @@ { "cells": [ { - "cell_type": "markdown", - "metadata": { - "colab_type": "text", - "id": "view-in-github" - }, + "cell_type": "code", + "execution_count": 3, + "id": "increasing-detection", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Digite sua senha: 1234\n", + "Senha inválida - Numero de caracteres inválidos\n" + ] + } + ], "source": [ - "![](https://i.imgur.com/YX6UATs.png)" + "import re\n", + "def validator(senha):\n", + " min_len = 6\n", + " max_len = 16\n", + " maiuscula = 1\n", + " minuscula = 1\n", + " min_numero = 1\n", + " especial = 1\n", + " \n", + "\n", + " if len(senha or ()) < min_len and len(senha or() > max_len):\n", + " print('Senha inválida - Numero de caracteres inválidos')\n", + "\n", + " elif len(re.findall(r\"[A-Z]\", senha)) < maiuscula:\n", + " print('Senha inválida - Número de letras maiusculas inválidas')\n", + " \n", + " elif len(re.findall(r\"[a-z]\", senha)) < minuscula:\n", + " print('Senha inválida - Número de letras minusculas inválidas')\n", + " elif len(re.findall(r\"[0-9]\", senha)) < min_numero:\n", + " print('Senha inválida - Quantidade de algarismos inválidos')\n", + " elif len(re.findall(r\"[$#@]\", senha)) < especial:\n", + " print('Senha inválida - Quantidade de caracteres especiais inválidos')\n", + " else: \n", + " print('Senha correta!')\n", + "\n", + "\n", + "#programa principal\n", + "senha = input('Digite sua senha: ')\n", + "validando = validator(senha)\n" ] }, { - "cell_type": "markdown", - "metadata": { - "colab_type": "text", - "id": "AYHY2YXQf6J2" - }, + "cell_type": "code", + "execution_count": 4, + "id": "armed-blackjack", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Digite sua senha: Qw#1234\n", + "Senha correta!\n" + ] + } + ], "source": [ - "### Desafio 12\n", - "\n", - "Escreva uma função em Python para verificar a validade de uma senha.\n", + "import re\n", + "#Função pedida\n", + "def validator(senha):\n", + " min_len = 6\n", + " max_len = 16\n", + " maiuscula = 1\n", + " minuscula = 1\n", + " min_numero = 1\n", + " especial = 1\n", + " \n", "\n", - "A senha deve ter:\n", + " if len(senha or ()) < min_len and len(senha or() > max_len):\n", + " print('Senha inválida - Numero de caracteres inválidos')\n", "\n", - "* Pelo menos 1 letra entre [a-z] e 1 letra entre [A-Z].\n", - "* Pelo menos 1 número entre [0-9].\n", - "* Pelo menos 1 caractere de [$ # @].\n", - "* Comprimento mínimo de 6 caracteres.\n", - "* Comprimento máximo de 16 caracteres.\n", + " elif len(re.findall(r\"[A-Z]\", senha)) < maiuscula:\n", + " print('Senha inválida - Número de letras maiusculas inválidas')\n", + " \n", + " elif len(re.findall(r\"[a-z]\", senha)) < minuscula:\n", + " print('Senha inválida - Número de letras minusculas inválidas')\n", + " elif len(re.findall(r\"[0-9]\", senha)) < min_numero:\n", + " print('Senha inválida - Quantidade de algarismos inválidos')\n", + " elif len(re.findall(r\"[$#@]\", senha)) < especial:\n", + " print('Senha inválida - Quantidade de caracteres especiais inválidos')\n", + " else: \n", + " print('Senha correta!')\n", "\n", - "Entradas: \"12345678\", \"J3sus0\", \"#Te5t300\", \"J*90j12374\", \"Michheeul\", \"Monk3y6\"\n", "\n", - "A saída deve ser a senha e um texto indicando se a senha é válida ou inválida:\n", - "\n", - "```\n", - "\"1234\" - Senha inválida\n", - "\"Qw#1234\" - Senha válida\n", - "```" + "#programa principal\n", + "senha = input('Digite sua senha: ')\n", + "validando = validator(senha)\n" ] }, { "cell_type": "code", - "execution_count": 0, - "metadata": { - "colab": {}, - "colab_type": "code", - "id": "UGgtGYGGf6J3" - }, + "execution_count": null, + "id": "another-force", + "metadata": {}, "outputs": [], - "source": [ - "# Seu código" - ] + "source": [] } ], "metadata": { - "anaconda-cloud": {}, - "colab": { - "include_colab_link": true, - "name": "Desafio 12.ipynb", - "provenance": [] - }, "kernelspec": { "display_name": "Python 3", "language": "python", @@ -75,9 +120,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.9" + "version": "3.9.2" } }, "nbformat": 4, - "nbformat_minor": 1 + "nbformat_minor": 5 }