elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


  Mostrar Mensajes
Páginas: 1 ... 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 [24] 25 26 27
231  Programación / Scripting / Re: Mi primer proyecto de python en: 27 Agosto 2020, 03:22 am
Hola, lo 1º es que estoy de acuerdo con el de arriba en numerosas cosas (principalmente en lo del código redundante).
2º Si llevas solo dos semanas estudiando y ya has conseguido sacar este proyecto tu solo desde cero, sin duda has aprovechado bastante bien el tiempo en mi opinión. ;-) ;-)
4º Por lo de la dislexia no te preocupes, te recomiendo usar el traductor de google o word para corregir las faltas a grosso modo, te lo recomiendo porque personalmente también tuve ciertos problemas parecidos y me fue muy bien.
5º Este código lo hice hace bastante tiempo, es más corto y es para una contraseña y usuario predefinido con un limite de tres intentos.

Código:
contador = 

usuario = input("introduzca el nombe de usuario:")
Contraseña2 = input("introduzca la contraseña:")


while contador != 3:
    if usuario == "root":
        pass
    if Contraseña2 == "toor":
        print("bienvenido")
        break
    if usuario != "root":
        contador = contador + 1
        print("quedan " + str(int(contador)) + " intentos")
        break

Hola tu código es muy bueno,hice una pequeña modificación.Que lo que hace es que te da 3 intentos y así.

No tengo idea si la forma en la que lo hice fue la correcta.Pero me sorprendió que lo pensé  y rápidamente logre hacerlo.
¿Que opinas?
Código:
contador  = 4
loop = True
user = input("introduzca el nombre de usuario:")
contra = input("introduzca la contraseña:")
while loop:
    if user == "root":
        if contra == "123":
            print("Bienvenido")
            break
    if user != "root":
        if contra != "123":
            contador = contador - 1
            print ("Quedan " + str(int(contador)) + " intentos!")
            user = input("Ingrese su usuario:")
            contra = input("Ingrese su contraseña:")
        if contador == 1:
            print("Saliendo...")
            break
232  Programación / Scripting / Re: Mi primer proyecto de python en: 25 Agosto 2020, 03:00 am
hola:
        ¿lo has probado?, ¿realmente crees que a los usuarios les gusta esperar por qué si?
tiene muchas cosas mal de lógica, otras innecesarias u otras faltan, código reduntante, y errores de ortografía o sintaxis(más vale que podés escribir como quieras, pero está bueno que el resultado final este cuidado). Te recomendaría que busques códigos de esto mismo, hay por toneladas en la red y compares que querés hacer y que hace realmente.Lee más sobre bucles y condicionales como mínimo. Como aprendizaje se nota terriblemente la falta de conocimientos.
No es con intención de ofender ni desmoralizar, práctica más, busca info de manejo de errores y trata de simplificar, en todo caso plantea dudas, hay muchos que saben y mientras no esperes todo hecho ni sea algo que pueda ser malicioso, seguro te ayudarán.
 
Claro,obvio que lo probé.Y lo de "Esperar" es por que quería reanimar otro proyecto.Que tenia en PSeint
este
Código:
Funcion Otromenu2 <- Otromenu22 (Otromenu222)
Escribir '**************************'
Escribir '1:Menu Cálculo           *'
Escribir '2:Jogo adivinhar o numbe *'
Escribir '3:Ta Te Ti               *'
Escribir '4:Hanoi                  *'
Escribir '**************************'
Leer Menu2
Segun Menu2  Hacer
1:
Escribir CALCULOPORTU(CONVERPORTU)
2:
intentos <- 10
num_secreto <- azar(100)+1
Escribir 'Adivinha o número (de 1 a 100):'
Leer num_ingresado
Mientras num_secreto<>num_ingresado Y intentos>1 Hacer
Si num_secreto>num_ingresado Entonces
Escribir 'Muito baixo'
SiNo
Escribir 'Muito alto'
FinSi
intentos <- intentos-1
Escribir 'Ele saiu ',intentos,' Tentativas:'
Leer num_ingresado
FinMientras
Si num_secreto=num_ingresado Entonces
Escribir 'Exato! Você adivinha em ',11-intentos,' Tentativas.'
SiNo
Escribir 'O número era: ',num_secreto
FinSi
3:
Dimension Tab1[3,3]
Dimension Tab2[3,3]
Para i<-1 Hasta 3 Hacer
Para j<-1 Hasta 3 Hacer
Tab1[i,j]<-0
Tab2[i,j]<-' '
FinPara
FinPara
TurnoJugador1 <- verdadero
Terminado <- Falso
Ganador <- Falso
CantTurnos <- 0
Mientras  NO Terminado Hacer
Borrar Pantalla
Escribir ' '
Escribir '      ||     ||     '
Escribir '   ',Tab2[1,1],'  ||  ',Tab2[1,2],'  ||  ',Tab2[1,3]
Escribir '     1||    2||    3'
Escribir ' =====++=====++======'
Escribir '      ||     ||     '
Escribir '   ',Tab2[2,1],'  ||  ',Tab2[2,2],'  ||  ',Tab2[2,3]
Escribir '     4||    5||    6'
Escribir ' =====++=====++======'
Escribir '      ||     ||     '
Escribir '   ',Tab2[3,1],'  ||  ',Tab2[3,2],'  ||  ',Tab2[3,3]
Escribir '     7||    8||    9'
Escribir ' '
Si  NO Ganador Y CantTurnos<9 Entonces
Si TurnoJugador1 Entonces
Ficha <- 'O'; Valor <- 1; Objetivo <- 1
Escribir 'A vez do jogador 1 (X)'
SiNo
Ficha <- 'X'; Valor <- 2; Objetivo <- 8
Escribir 'A vez do jogador 2 (O)'
FinSi
Escribir 'Digite a posição (1-9):'
Repetir
Leer Pos
Si Pos<1 O Pos>9 Entonces
Escribir 'Posição incorreta, entre novamente: '
Pos <- 99
SiNo
i <- trunc((Pos-1)/3)+1
j <- ((Pos-1) MOD 3)+1
Si Tab1[i,j]<>0 Entonces
Pos <- 99
Escribir 'Posição incorreta, entre novamente: '
FinSi
FinSi
Hasta Que Pos<>99
CantTurnos <- CantTurnos+1
Tab1[i,j]<-Valor
Tab2[i,j]<-Ficha
aux_d1 <- 1; aux_d2 <- 1
Para i<-1 Hasta 3 Hacer
aux_i <- 1; aux_j <- 1
aux_d1 <- aux_d1*Tab1[i,i]
aux_d2 <- aux_d2*Tab1[i,4-i]
Para j<-1 Hasta 3 Hacer
aux_i <- aux_i*Tab1[i,j]
aux_j <- aux_j*Tab1[j,i]
FinPara
Si aux_i=Objetivo O aux_j=Objetivo Entonces
Ganador <- verdadero
FinSi
FinPara
Si aux_d1=Objetivo O aux_d2=Objetivo Entonces
Ganador <- verdadero
SiNo
TurnoJugador1 <- NO TurnoJugador1
FinSi
SiNo
Si Ganador Entonces
Escribir 'Vencedor: '
Si TurnoJugador1 Entonces
Escribir 'Jogador 1!'
SiNo
Escribir 'Jogador 2!'
FinSi
SiNo
Escribir 'Draw!'
FinSi
Terminado <- verdadero
FinSi
FinMientras
4:
Dimension torres[3,10],cant_discos[3]
Escribir 'Ingrese el nro de discos (1-8):'
Leer discos
Mientras discos<1 O discos>8 Hacer
Escribir 'El numero de discos debe ser mayor a 0 y menor a 5:'
Leer discos
FinMientras
cant_discos[1] <- discos
cant_discos[2] <- 0
cant_discos[3] <- 0
Para i<-1 Hasta discos Hacer
torres[1,i]<-discos-i+1
FinPara
cant_movs <- 0
Mientras cant_discos[3]<>discos Hacer
Borrar Pantalla
Para i<-1 Hasta 3 Hacer
Escribir 'Torre ',i
Si cant_discos[i]=0 Entonces
Escribir ''
SiNo
Para j<-cant_discos[i] Hasta 1 Con Paso -1 Hacer
Segun torres[i,j]  Hacer
1:
Escribir '                   XX'
2:
Escribir '                 XXXXXX'
3:
Escribir '               XXXXXXXXXX'
4:
Escribir '             XXXXXXXXXXXXXX'
5:
Escribir '           XXXXXXXXXXXXXXXXXX'
6:
Escribir '         XXXXXXXXXXXXXXXXXXXXXX'
7:
Escribir '       XXXXXXXXXXXXXXXXXXXXXXXXXX'
8:
Escribir '     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
FinSegun
FinPara
FinSi
Escribir '   ----------------------------------'
Escribir ''
FinPara
Escribir 'Mover desde la torre: '
Leer t1
Escribir 'hacia la torre: '
Leer t2
Si t1<1 O t1>3 O t2<1 O t2>3 Entonces
Escribir 'Movimiento invalido'
Esperar Tecla
SiNo
Si cant_discos[t1]=0 Entonces
Escribir 'Movimiento invalido'
Esperar Tecla
SiNo
disco_a_mover <- torres[t1,cant_discos[t1]]
puede_mover <- verdadero
Si cant_discos[t2]<>0 Entonces
Si torres[t2,cant_discos[t2]]<disco_a_mover Entonces
puede_mover <- Falso
FinSi
FinSi
Si puede_mover Entonces
cant_movs <- cant_movs+1
cant_discos[t2] <- cant_discos[t2]+1
torres[t2,cant_discos[t2]]<-disco_a_mover
cant_discos[t1] <- cant_discos[t1]-1
SiNo
Escribir 'Movimiento invalido'
Esperar Tecla
FinSi
FinSi
FinSi
FinMientras
Borrar Pantalla
Escribir 'Juego finalizado en ',cant_movs,' movimientos!'
De Otro Modo:
Escribir 'Operação inválida'
FinSegun
FinFuncion
Funcion Otromenu1 <- Otromenu11 (Otromenu111)
Escribir '**************************'
Escribir '1:Calculation Menu       *'
Escribir '2:Game guess the number  *'
Escribir '3:Ta Te Ti               *'
Escribir '4:Hanoi                  *'
Escribir '**************************'
Leer Menu2
Segun Menu2  Hacer
1:
Escribir CALCULOINGLES(CONVERINGLES)
2:
intentos <- 10
num_secreto <- azar(100)+1
Escribir 'Guess the number (from 1 to 100):'
Leer num_ingresado
Mientras num_secreto<>num_ingresado Y intentos>1 Hacer
Si num_secreto>num_ingresado Entonces
Escribir 'Very low'
SiNo
Escribir 'Very high'
FinSi
intentos <- intentos-1
Escribir 'He has left ',intentos,' Attempts:'
Leer num_ingresado
FinMientras
Si num_secreto=num_ingresado Entonces
Escribir 'Exact! You guess in ',11-intentos,' Attempts.'
SiNo
Escribir 'The number was: ',num_secreto
FinSi
3:
Dimension Tab1[3,3]
Dimension Tab2[3,3]
Para i<-1 Hasta 3 Hacer
Para j<-1 Hasta 3 Hacer
Tab1[i,j]<-0
Tab2[i,j]<-' '
FinPara
FinPara
TurnoJugador1 <- verdadero
Terminado <- Falso
Ganador <- Falso
CantTurnos <- 0
Mientras  NO Terminado Hacer
Borrar Pantalla
Escribir ' '
Escribir '      ||     ||     '
Escribir '   ',Tab2[1,1],'  ||  ',Tab2[1,2],'  ||  ',Tab2[1,3]
Escribir '     1||    2||    3'
Escribir ' =====++=====++======'
Escribir '      ||     ||     '
Escribir '   ',Tab2[2,1],'  ||  ',Tab2[2,2],'  ||  ',Tab2[2,3]
Escribir '     4||    5||    6'
Escribir ' =====++=====++======'
Escribir '      ||     ||     '
Escribir '   ',Tab2[3,1],'  ||  ',Tab2[3,2],'  ||  ',Tab2[3,3]
Escribir '     7||    8||    9'
Escribir ' '
Si  NO Ganador Y CantTurnos<9 Entonces
Si TurnoJugador1 Entonces
Ficha <- 'O'; Valor <- 1; Objetivo <- 1
Escribir 'Players turn 1 (X)'
SiNo
Ficha <- 'X'; Valor <- 2; Objetivo <- 8
Escribir 'Players turn 2 (O)'
FinSi
Escribir 'Enter the Position (1-9):'
Repetir
Leer Pos
Si Pos<1 O Pos>9 Entonces
Escribir 'Incorrect position, enter again: '
Pos <- 99
SiNo
i <- trunc((Pos-1)/3)+1
j <- ((Pos-1) MOD 3)+1
Si Tab1[i,j]<>0 Entonces
Pos <- 99
Escribir 'Incorrect position, enter again: '
FinSi
FinSi
Hasta Que Pos<>99
CantTurnos <- CantTurnos+1
Tab1[i,j]<-Valor
Tab2[i,j]<-Ficha
aux_d1 <- 1; aux_d2 <- 1
Para i<-1 Hasta 3 Hacer
aux_i <- 1; aux_j <- 1
aux_d1 <- aux_d1*Tab1[i,i]
aux_d2 <- aux_d2*Tab1[i,4-i]
Para j<-1 Hasta 3 Hacer
aux_i <- aux_i*Tab1[i,j]
aux_j <- aux_j*Tab1[j,i]
FinPara
Si aux_i=Objetivo O aux_j=Objetivo Entonces
Ganador <- verdadero
FinSi
FinPara
Si aux_d1=Objetivo O aux_d2=Objetivo Entonces
Ganador <- verdadero
SiNo
TurnoJugador1 <- NO TurnoJugador1
FinSi
SiNo
Si Ganador Entonces
Escribir 'Winner: '
Si TurnoJugador1 Entonces
Escribir 'Player 1!'
SiNo
Escribir 'Player 2!'
FinSi
SiNo
Escribir 'Tie!'
FinSi
Terminado <- verdadero
FinSi
FinMientras
4:
Dimension torres[3,10],cant_discos[3]
Escribir 'Enter the number of disks (1-8):'
Leer discos
Mientras discos<1 O discos>8 Hacer
Escribir 'The number of discs must be greater than 0 and less than 5:'
Leer discos
FinMientras
cant_discos[1] <- discos
cant_discos[2] <- 0
cant_discos[3] <- 0
Para i<-1 Hasta discos Hacer
torres[1,i]<-discos-i+1
FinPara
cant_movs <- 0
Mientras cant_discos[3]<>discos Hacer
Borrar Pantalla
Para i<-1 Hasta 3 Hacer
Escribir 'Tower ',i
Si cant_discos[i]=0 Entonces
Escribir ''
SiNo
Para j<-cant_discos[i] Hasta 1 Con Paso -1 Hacer
Segun torres[i,j]  Hacer
1:
Escribir '                   XX'
2:
Escribir '                 XXXXXX'
3:
Escribir '               XXXXXXXXXX'
4:
Escribir '             XXXXXXXXXXXXXX'
5:
Escribir '           XXXXXXXXXXXXXXXXXX'
6:
Escribir '         XXXXXXXXXXXXXXXXXXXXXX'
7:
Escribir '       XXXXXXXXXXXXXXXXXXXXXXXXXX'
8:
Escribir '     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
FinSegun
FinPara
FinSi
Escribir '   ----------------------------------'
Escribir ''
FinPara
Escribir 'Move from the tower: '
Leer t1
Escribir 'towards the tower: '
Leer t2
Si t1<1 O t1>3 O t2<1 O t2>3 Entonces
Escribir 'Invalid movement'
Esperar Tecla
SiNo
Si cant_discos[t1]=0 Entonces
Escribir 'Invalid movement'
Esperar Tecla
SiNo
disco_a_mover <- torres[t1,cant_discos[t1]]
puede_mover <- verdadero
Si cant_discos[t2]<>0 Entonces
Si torres[t2,cant_discos[t2]]<disco_a_mover Entonces
puede_mover <- Falso
FinSi
FinSi
Si puede_mover Entonces
cant_movs <- cant_movs+1
cant_discos[t2] <- cant_discos[t2]+1
torres[t2,cant_discos[t2]]<-disco_a_mover
cant_discos[t1] <- cant_discos[t1]-1
SiNo
Escribir 'Invalid movement'
Esperar Tecla
FinSi
FinSi
FinSi
FinMientras
Borrar Pantalla
Escribir 'Game over in ',cant_movs,' movements!'
De Otro Modo:
Escribir 'Invalid operation'
FinSegun
FinFuncion

Funcion MENUDECALCULOPORTU <- CALCULOPORTU (CONVERPORTU)
Repetir
Escribir '*************************'
Escribir '*   MENU DE CÁLCULO     *'
Escribir '*************************'
Escribir '*1:Vá de MB para KB     *'
Escribir '*2:Vá de KB para MB     *'
Escribir '*3:Vá de MB para GB     *'
Escribir '*4:Menu inicial         *'
Escribir '*Escolha uma opção (1-4)*'
Escribir '*************************'
Leer Menu_de_calculoIngles
Segun Menu_de_calculoIngles  Hacer
1:
Repetir
Escribir 'Digite o valor que deseja converter de MB para KB'
Leer MBAKB
respultado <- MBAKB*1024
Borrar Pantalla
Escribir 'a quantidade é KB ',respultado
Escribir 'Repetir?'
Escribir '1:sim'
Escribir '2:Não'
Leer repetirMBAKB
Hasta Que repetirMBAKB=2
Escribir 'Pressione Enter para continuar'
Esperar Tecla
Borrar Pantalla
2:
Repetir
Escribir 'Digite o valor que você deseja transformar de KB para MB'
Leer KBAMB
respultado <- KBAMB/1024
Borrar Pantalla
Escribir 'a quantidade é MB ',respultado
Escribir 'Repetir?'
Escribir '1:sim'
Escribir '2:Não'
Leer repetirMBAKB1
Hasta Que repetirMBAKB1='2'
Escribir 'Pressione Enter para continuar'
Esperar Tecla
Borrar Pantalla
3:
Repetir
Escribir 'Digite o valor que você deseja transformar de MB para GB'
Leer MBAGB
respultado <- MBAGB/1024
Borrar Pantalla
Escribir 'a quantidade é GB ',respultado
Escribir 'Repetir?'
Escribir '1:sim'
Escribir '2:não'
Leer repetirMBAKB2
Hasta Que repetirMBAKB2='2'
Escribir 'Pressione Enter para continuar'
Esperar Tecla
Borrar Pantalla
4:
Escribir 'VOLTAR AO MENU INICIAL'
Borrar Pantalla
De Otro Modo:
Escribir 'OPERAÇÃO NÃO VÁLIDA'
FinSegun
Hasta Que Menu_de_calculo=4
FinFuncion

Funcion MENUDECALCULOINGLES <- CALCULOINGLES (CONVERINGLES)
Repetir
Escribir '************************'
Escribir '*   CALCULATION MENU   *'
Escribir '************************'
Escribir '*1:Go from MB to KB    *'
Escribir '*2:Move from KB to MB  *'
Escribir '*3:Go from MB to GB    *'
Escribir '*4:Initial menu        *'
Escribir '*Choose an option (1-4)*'
Escribir '************************'
Leer Menu_de_calculo
Segun Menu_de_calculo  Hacer
1:
Repetir
Escribir 'Enter amount you want to convert from MB to KB'
Leer MBAKB
respultado <- MBAKB*1024
Borrar Pantalla
Escribir 'the amount is KB ',respultado
Escribir 'To repeat?'
Escribir '1:Yes'
Escribir '2:No'
Leer repetirMBAKB
Hasta Que repetirMBAKB=2
Escribir 'Press enter to continue'
Esperar Tecla
Borrar Pantalla
2:
Repetir
Escribir 'Enter amount you want to transform from KB to MB'
Leer KBAMB
respultado <- KBAMB/1024
Borrar Pantalla
Escribir 'the amount is MB ',respultado
Escribir 'To repeat?'
Escribir '1:Yes'
Escribir '2:no'
Leer repetirMBAKB1
Hasta Que repetirMBAKB1='2'
Escribir 'Press enter to continue'
Esperar Tecla
Borrar Pantalla
3:
Repetir
Escribir 'Enter amount you want to transform from MB to GB'
Leer MBAGB
respultado <- MBAGB/1024
Borrar Pantalla
Escribir 'the amount is GB ',respultado
Escribir 'To repeat?'
Escribir '1:Yes'
Escribir '2:no'
Leer repetirMBAKB2
Hasta Que repetirMBAKB2='2'
Escribir 'Press enter to continue'
Esperar Tecla
Borrar Pantalla
4:
Escribir 'BACK TO THE INITIAL MENU'
Borrar Pantalla
De Otro Modo:
Escribir 'OPERATION NOT VALID'
FinSegun
Hasta Que Menu_de_calculo=4
FinFuncion

Funcion MENUDECALCULO <- CALULO (CONVER)
Repetir
Escribir '************************'
Escribir '*   MENU DE CALCULO    *'
Escribir '************************'
Escribir '*1:Pasar de MB a KB    *'
Escribir '*2:Pasar de KB a MB    *'
Escribir '*3:Pasar de MB a GB    *'
Escribir '*4:Menu inicial        *'
Escribir '*Elija una opción (1-4)*'
Escribir '************************'
Leer Menu_de_calculo
Segun Menu_de_calculo  Hacer
1:
Repetir
Escribir 'Ingrese cantidad que desea transformar de MB a KB'
Leer MBAKB
respultado <- MBAKB*1024
Borrar Pantalla
Escribir 'la cantidad es de KB ',respultado
Escribir 'Volver a repetir?'
Escribir '1:si'
Escribir '2:no'
Leer repetirMBAKB
Hasta Que repetirMBAKB=2
Escribir 'Presione enter para continuar'
Esperar Tecla
Borrar Pantalla
2:
Repetir
Escribir 'Ingrese cantidad que desea transformar de KB a MB'
Leer KBAMB
respultado <- KBAMB/1024
Borrar Pantalla
Escribir 'la cantidad es de MB ',respultado
Escribir 'Volver a repetir?'
Escribir '1:si'
Escribir '2:no'
Leer repetirMBAKB1
Hasta Que repetirMBAKB1='2'
Escribir 'Presione enter para continuar'
Esperar Tecla
Borrar Pantalla
3:
Repetir
Escribir 'Ingrese cantidad que desea transformar de MB a GB'
Leer MBAGB
respultado <- MBAGB/1024
Borrar Pantalla
Escribir 'la cantidad es de GB ',respultado
Escribir 'Volver a repetir?'
Escribir '1:si'
Escribir '2:no'
Leer repetirMBAKB2
Hasta Que repetirMBAKB2='2'
Escribir 'Presione enter para continuar'
Esperar Tecla
Borrar Pantalla
4:
Escribir 'VOLVIENDO AL MENU INICIAL'
Borrar Pantalla
De Otro Modo:
Escribir 'OPERACION NO VALIDA'
FinSegun
Hasta Que Menu_de_calculo=4
FinFuncion

Funcion funciondeenter <- funcionX2 (limpiarpantallax2)
Escribir 'Presione enter'
Esperar Tecla
Borrar Pantalla
FinFuncion

Funcion esperarFun2 <- fun2 (anim)
Esperar 1 Segundos
Escribir '.'
Esperar 1 Segundos
Escribir '.'
Esperar 1 Segundos
Escribir '.'
FinFuncion

Algoritmo proyecto_FF1_V2
Escribir '************************'
Escribir '*         MENU         *'
Escribir '************************'
Escribir '*1:Español             *'
Escribir '*2:Ingles              *'
Escribir '*3:portugués           *'
Escribir '*4:Salir               *'
Escribir '*Elija una opción (1-4)*'
Escribir '************************'
Leer idioma
Borrar Pantalla
Segun idioma  Hacer
1:
Repetir
Escribir '************************'
Escribir '*         MENU         *'
Escribir '************************'
Escribir '*1:Iniciar program     *'
Escribir '*2:Registrarse         *'
Escribir '*3:Olvido sus datos?   *'
Escribir '*4:Salir               *'
Escribir '*Elija una opción (1-4)*'
Escribir '************************'
Leer OP
Borrar Pantalla
Segun OP  Hacer
1:
Escribir 'Ingrese su usuario'
Leer usuario45
Si usuario10=usuario45 Entonces
Escribir 'Escriba su usuario'
Leer usuariodeinicodeseion
Borrar Pantalla
Escribir 'Que tipo de seguridad tiene su cuenta?'
Escribir '1:Contraseña'
Escribir '2:Pin'
Escribir 'Elija una opción (1-2):'
Leer OP4
Segun OP4  Hacer
1:
Escribir 'Ingrese su contraseña'
Leer contraseña3
Borrar Pantalla
Si usuariodeinicodeseion=usuario20 Entonces
Escribir '**************************'
Escribir '1:Menu de calculo        *'
Escribir '2:Juego adivina el numero*'
Escribir '3:Ta Te Ti               *'
Escribir '4:Hanoi                  *'
Escribir '**************************'
Leer Menu2
Segun Menu2  Hacer
1:
Escribir CALULO(CONVER)
2:
intentos <- 10
num_secreto <- azar(100)+1
Escribir 'Adivine el numero (de 1 a 100):'
Leer num_ingresado
Mientras num_secreto<>num_ingresado Y intentos>1 Hacer
Si num_secreto>num_ingresado Entonces
Escribir 'Muy bajo'
SiNo
Escribir 'Muy alto'
FinSi
intentos <- intentos-1
Escribir 'Le quedan ',intentos,' intentos:'
Leer num_ingresado
FinMientras
Si num_secreto=num_ingresado Entonces
Escribir 'Exacto! Usted adivino en ',11-intentos,' intentos.'
SiNo
Escribir 'El numero era: ',num_secreto
FinSi
3:
Dimension Tab1[3,3]
Dimension Tab2[3,3]
Para i<-1 Hasta 3 Hacer
Para j<-1 Hasta 3 Hacer
Tab1[i,j]<-0
Tab2[i,j]<-' '
FinPara
FinPara
TurnoJugador1 <- verdadero
Terminado <- Falso
Ganador <- Falso
CantTurnos <- 0
Mientras  NO Terminado Hacer
Borrar Pantalla
Escribir ' '
Escribir '      ||     ||     '
Escribir '   ',Tab2[1,1],'  ||  ',Tab2[1,2],'  ||  ',Tab2[1,3]
Escribir '     1||    2||    3'
Escribir ' =====++=====++======'
Escribir '      ||     ||     '
Escribir '   ',Tab2[2,1],'  ||  ',Tab2[2,2],'  ||  ',Tab2[2,3]
Escribir '     4||    5||    6'
Escribir ' =====++=====++======'
Escribir '      ||     ||     '
Escribir '   ',Tab2[3,1],'  ||  ',Tab2[3,2],'  ||  ',Tab2[3,3]
Escribir '     7||    8||    9'
Escribir ' '
Si  NO Ganador Y CantTurnos<9 Entonces
Si TurnoJugador1 Entonces
Ficha <- 'O'; Valor <- 1; Objetivo <- 1
Escribir 'Turno del jugador 1 (X)'
SiNo
Ficha <- 'X'; Valor <- 2; Objetivo <- 8
Escribir 'Turno del jugador 2 (O)'
FinSi
Escribir 'Ingrese la Posición (1-9):'
Repetir
Leer Pos
Si Pos<1 O Pos>9 Entonces
Escribir 'Posición incorrecta, ingrese nuevamente: '
Pos <- 99
SiNo
i <- trunc((Pos-1)/3)+1
j <- ((Pos-1) MOD 3)+1
Si Tab1[i,j]<>0 Entonces
Pos <- 99
Escribir 'Posición incorrecta, ingrese nuevamente: '
FinSi
FinSi
Hasta Que Pos<>99
CantTurnos <- CantTurnos+1
Tab1[i,j]<-Valor
Tab2[i,j]<-Ficha
aux_d1 <- 1; aux_d2 <- 1
Para i<-1 Hasta 3 Hacer
aux_i <- 1; aux_j <- 1
aux_d1 <- aux_d1*Tab1[i,i]
aux_d2 <- aux_d2*Tab1[i,4-i]
Para j<-1 Hasta 3 Hacer
aux_i <- aux_i*Tab1[i,j]
aux_j <- aux_j*Tab1[j,i]
FinPara
Si aux_i=Objetivo O aux_j=Objetivo Entonces
Ganador <- verdadero
FinSi
FinPara
Si aux_d1=Objetivo O aux_d2=Objetivo Entonces
Ganador <- verdadero
SiNo
TurnoJugador1 <- NO TurnoJugador1
FinSi
SiNo
Si Ganador Entonces
Escribir 'Ganador: '
Si TurnoJugador1 Entonces
Escribir 'Jugador 1!'
SiNo
Escribir 'Jugador 2!'
FinSi
SiNo
Escribir 'Empate!'
FinSi
Terminado <- verdadero
FinSi
FinMientras
4:
Dimension torres[3,10],cant_discos[3]
Escribir 'Digite o número de discos (1-8):'
Leer discos
Mientras discos<1 O discos>8 Hacer
Escribir 'número de discos deve ser maior que 0 e menor que 5:'
Leer discos
FinMientras
cant_discos[1] <- discos
cant_discos[2] <- 0
cant_discos[3] <- 0
Para i<-1 Hasta discos Hacer
torres[1,i]<-discos-i+1
FinPara
cant_movs <- 0
Mientras cant_discos[3]<>discos Hacer
Borrar Pantalla
Para i<-1 Hasta 3 Hacer
Escribir 'Torre',i
Si cant_discos[i]=0 Entonces
Escribir ''
SiNo
Para j<-cant_discos[i] Hasta 1 Con Paso -1 Hacer
Segun torres[i,j]  Hacer
1:
Escribir '                   XX'
2:
Escribir '                 XXXXXX'
3:
Escribir '               XXXXXXXXXX'
4:
Escribir '             XXXXXXXXXXXXXX'
5:
Escribir '           XXXXXXXXXXXXXXXXXX'
6:
Escribir '         XXXXXXXXXXXXXXXXXXXXXX'
7:
Escribir '       XXXXXXXXXXXXXXXXXXXXXXXXXX'
8:
Escribir '     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
FinSegun
FinPara
FinSi
Escribir '   ----------------------------------'
Escribir ''
FinPara
Escribir 'Mover-se da torre: '
Leer t1
Escribir 'em direção à torre: '
Leer t2
Si t1<1 O t1>3 O t2<1 O t2>3 Entonces
Escribir 'Movimento inválido'
Esperar Tecla
SiNo
Si cant_discos[t1]=0 Entonces
Escribir 'Movimento inválido'
Esperar Tecla
SiNo
disco_a_mover <- torres[t1,cant_discos[t1]]
puede_mover <- verdadero
Si cant_discos[t2]<>0 Entonces
Si torres[t2,cant_discos[t2]]<disco_a_mover Entonces
puede_mover <- Falso
FinSi
FinSi
Si puede_mover Entonces
cant_movs <- cant_movs+1
cant_discos[t2] <- cant_discos[t2]+1
torres[t2,cant_discos[t2]]<-disco_a_mover
cant_discos[t1] <- cant_discos[t1]-1
SiNo
Escribir 'Movimento inválido'
Esperar Tecla
FinSi
FinSi
FinSi
FinMientras
Borrar Pantalla
Escribir 'Game over in ',cant_movs,' movements!'
De Otro Modo:
Escribir 'Operacion no valida'
FinSegun
SiNo
Escribir 'Contraseña incorrecta'
FinSi
2:
Escribir 'Ingrese su pin'
Leer pin3
Si usuariodeinicodeseion=usuario20 Entonces
Si pin1=pin3 Entonces
Escribir '**************************'
Escribir '1:Menu de calculo        *'
Escribir '2:Juego adivina el numero*'
Escribir '**************************'
Leer Menu2
Segun Menu2  Hacer
1:
Escribir CALULO(CONVER)
2:
intentos <- 10
num_secreto <- azar(100)+1
Escribir 'Adivine el numero (de 1 a 100):'
Leer num_ingresado
Mientras num_secreto<>num_ingresado Y intentos>1 Hacer
Si num_secreto>num_ingresado Entonces
Escribir 'Muy bajo'
SiNo
Escribir 'Muy alto'
FinSi
intentos <- intentos-1
Escribir 'Le quedan ',intentos,' intentos:'
Leer num_ingresado
FinMientras
Si num_secreto=num_ingresado Entonces
Escribir 'Exacto! Usted adivino en ',11-intentos,' intentos.'
SiNo
Escribir 'El numero era: ',num_secreto
FinSi
De Otro Modo:
Escribir 'Operacion no valida'
FinSegun
SiNo
Escribir 'Contraseña incorrecta'
FinSi
SiNo
Escribir 'Pin incorrecto'
Escribir funcionX2(limpiarpantallax2)
FinSi
De Otro Modo:
Escribir 'Operacion no valida'
Escribir funcionX2(limpiarpantallax2)
FinSegun
SiNo
Escribir 'No hay un usuario!'
Escribir funcionX2(limpiarpantallax2)
FinSi
2:
Escribir '************************'
Escribir '*      Registrarte     *'
Escribir '************************'
Repetir
Escribir 'ingrese un usuario'
Leer usuario10
Escribir 'repita su usuario'
Leer usuario20
Borrar Pantalla
Si usuario10=usuario20 Entonces
Escribir '*****************************'
Escribir '*que tipo de seguridad desea*'
Escribir '*****************************'
Escribir '1:contraseña'
Escribir '2:pin'
Leer OP2
Segun OP2  Hacer
1:
Repetir
Escribir 'ingrese una contraseña'
Leer contraseña1
Escribir 'repita la contraseña'
Leer contraseña2
Borrar Pantalla
Si contraseña1=contraseña2 Entonces
Escribir 'usuario creado correctamente'
Escribir funcionX2(limpiarpantallax2)
SiNo
Si contraseña1<>contraseña2 Entonces
Escribir '********************************'
Escribir '*vuelva a repetir la contraseña*'
Escribir '********************************'
FinSi
FinSi
Hasta Que contraseña1=contraseña2
2:
Borrar Pantalla
Repetir
Escribir 'ingrese un pin'
Leer pin1
Escribir 'repita el pin'
Leer pin2
Si pin1=pin2 Entonces
Escribir 'usuario creado correctamente'
Escribir funcionX2(limpiarpantallax2)
SiNo
Si pin1<>pin2 Entonces
Borrar Pantalla
Escribir '*************************'
Escribir '*vuelva a repetir el pin*'
Escribir '*************************'
FinSi
FinSi
Hasta Que pin1=pin2
De Otro Modo:
Escribir funcionX2(limpiarpantallax2)
FinSegun
SiNo
Si usuario10<>usuario20 Entonces
Escribir '*****************************'
Escribir '*vuelva a repetir el usuario*'
Escribir '*****************************'
FinSi
FinSi
Hasta Que usuario10=usuario20
3:
Escribir 'seguro que es usted?'
Escribir 'ingrese su usuario'
Leer usuario10
Si usuario10=usuario20 Entonces
Borrar Pantalla
Repetir
Escribir 'Ok bienvenido '
Escribir 'que quiere saber?'
Escribir '1:mi nombre de usuario'
Escribir '2:mi contraseña '
Escribir '3:mi pin'
Escribir '4:volver al menu principal'
Leer seguridad
Borrar Pantalla
Segun seguridad  Hacer
1:
Escribir 'su nombre de usuario es ',usuario10
Escribir funcionX2(limpiarpantallax2)
2:
Escribir 'su contraseña es ',contraseña1
Escribir funcionX2(limpiarpantallax2)
3:
Escribir 'su pin es ',pin1
Escribir funcionX2(limpiarpantallax2)
4:
Escribir funcionX2(limpiarpantallax2)
De Otro Modo:
Escribir 'operacion no valida'
Escribir funcionX2(limpiarpantallax2)
FinSegun
Hasta Que seguridad=4
FinSi
Si usuario10<>usuario20 Entonces
Escribir 'Usuario incorrecto'
Escribir fun2(anim)
Escribir funcionX2(limpiarpantallax2)
FinSi
4:
Escribir 'Vuelva pronto'
De Otro Modo:
Escribir 'Operacion no valida'
Escribir funcionX2(limpiarpantallax2)
FinSegun
Hasta Que OP=4
2:
Escribir funcionX2(limpiarpantallax2)
Repetir
Escribir '************************'
Escribir '*         MENU         *'
Escribir '************************'
Escribir '*1:Startup program     *'
Escribir '*2:Register            *'
Escribir '*3:Forgot your data?   *'
Escribir '*4:Exit                *'
Escribir '*Choose an option (1-4)*'
Escribir '************************'
Leer OP
Borrar Pantalla
Segun OP  Hacer
1:
Escribir 'Enter your username'
Leer usuario45
Si usuario10=usuario45 Entonces
Escribir 'Enter your username'
Leer usuariodeinicodeseion
Borrar Pantalla
Escribir 'What kind of security does your account have?'
Escribir '1:Password'
Escribir '2:Pin'
Escribir 'Choose an option (1-2):'
Leer OP4
Segun OP4  Hacer
1:
Escribir 'Enter your password'
Leer contraseña3
Borrar Pantalla
Si usuariodeinicodeseion=usuario20 Entonces
Si contraseña1=contraseña3 Entonces
Escribir Otromenu11(Otromenu111)
SiNo
Escribir 'Incorrect password'
FinSi
FinSi
2:
Escribir 'Enter your pin'
Leer pin3
Si usuariodeinicodeseion=usuario20 Entonces
Si pin1=pin3 Entonces
Borrar Pantalla
Escribir 'Starting program'
Escribir fun2(anim)
Escribir funcionX2(limpiarpantallax2)
Escribir CALULO(CONVER)
SiNo
Escribir 'Wrong pin'
Escribir funcionX2(limpiarpantallax2)
FinSi
FinSi
De Otro Modo:
Escribir 'Invalid operation'
Escribir funcionX2(limpiarpantallax2)
FinSegun
SiNo
Escribir 'There is no user!'
Escribir funcionX2(limpiarpantallax2)
FinSi
2:
Escribir '************************'
Escribir '*      Register        *'
Escribir '************************'
Repetir
Escribir 'Enter a user'
Leer usuario10
Escribir 'Repeat your username'
Leer usuario20
Borrar Pantalla
Si usuario10=usuario20 Entonces
Escribir '***********************************'
Escribir '*what kind of security do you want*'
Escribir '***********************************'
Escribir '1:password'
Escribir '2:pin'
Leer OP2
Segun OP2  Hacer
1:
Repetir
Escribir 'Enter a password'
Leer contraseña1
Escribir 'Repeat password'
Leer contraseña2
Borrar Pantalla
Si contraseña1=contraseña2 Entonces
Escribir 'User created successfully'
Escribir funcionX2(limpiarpantallax2)
SiNo
Si contraseña1<>contraseña2 Entonces
Escribir '*****************'
Escribir '*repeat password*'
Escribir '*****************'
FinSi
FinSi
Hasta Que contraseña1=contraseña2
2:
Borrar Pantalla
Repetir
Escribir 'enter a pin'
Leer pin1
Escribir 'repeat the pin'
Leer pin2
Si pin1=pin2 Entonces
Escribir 'User created successfully'
Escribir funcionX2(limpiarpantallax2)
SiNo
Si pin1<>pin2 Entonces
Borrar Pantalla
Escribir '****************'
Escribir '*Repeat the pin*'
Escribir '****************'
FinSi
FinSi
Hasta Que pin1=pin2
De Otro Modo:
Escribir funcionX2(limpiarpantallax2)
FinSegun
SiNo
Si usuario10<>usuario20 Entonces
Escribir '*****************'
Escribir '*Repeat the user*'
Escribir '*****************'
FinSi
FinSi
Hasta Que usuario10=usuario20
3:
Escribir 'Sure you are?'
Escribir 'enter your username'
Leer usuario10
Si usuario10=usuario20 Entonces
Borrar Pantalla
Repetir
Escribir 'Ok bienvenido'
Escribir 'What do you want know?'
Escribir '1:My username'
Escribir '2:My password'
Escribir '3:My pin'
Escribir '4:Back to Main Menu'
Leer seguridad
Borrar Pantalla
Segun seguridad  Hacer
1:
Escribir 'Your username is ',usuario10
Escribir funcionX2(limpiarpantallax2)
2:
Escribir 'Your password is ',contraseña1
Escribir funcionX2(limpiarpantallax2)
3:
Escribir 'His pin is ',pin1
Escribir funcionX2(limpiarpantallax2)
4:
Escribir funcionX2(limpiarpantallax2)
De Otro Modo:
Escribir 'Invalid operation'
Escribir funcionX2(limpiarpantallax2)
FinSegun
Hasta Que seguridad=4
FinSi
Si usuario10<>usuario20 Entonces
Escribir 'Wrong user'
Escribir fun2(anim)
Escribir funcionX2(limpiarpantallax2)
FinSi
4:
Escribir 'Come back soon'
De Otro Modo:
Escribir 'Invalid operation'
Escribir funcionX2(limpiarpantallax2)
FinSegun
Hasta Que OP=4
3:
Escribir funcionX2(limpiarpantallax2)
Repetir
Escribir '*****************************'
Escribir '*         MENU              *'
Escribir '*****************************'
Escribir '*1:Programa de inicialização*'
Escribir '*2:Registre-se              *'
Escribir '*3:Esqueceu seus dados?     *'
Escribir '*4:Sair                     *'
Escribir '*Escolha uma opção (1-4)    *'
Escribir '*****************************'
Leer OP
Borrar Pantalla
Segun OP  Hacer
1:
Escribir 'Digite seu nome de usuário'
Leer usuario45
Si usuario10=usuario45 Entonces
Escribir 'Enter your username'
Leer usuariodeinicodeseion
Borrar Pantalla
Escribir 'Que tipo de segurança sua conta possui?'
Escribir '1:Senha'
Escribir '2:Pin'
Escribir 'Escolha uma opção (1-2):'
Leer OP4
Segun OP4  Hacer
1:
Escribir 'Enter your password'
Leer contraseña3
Borrar Pantalla
Si usuariodeinicodeseion=usuario20 Entonces
Si contraseña1=contraseña3 Entonces
Escribir Otromenu22(Otromenu222)
SiNo
Escribir 'Senha incorreta'
FinSi
FinSi
2:
Escribir 'Digite seu pin'
Leer pin3
Si usuariodeinicodeseion=usuario20 Entonces
Si pin1=pin3 Entonces
Escribir Otromenu22(Otromenu222)
SiNo
Escribir 'Pino errado'
Escribir funcionX2(limpiarpantallax2)
FinSi
FinSi
De Otro Modo:
Escribir 'Operação inválida'
Escribir funcionX2(limpiarpantallax2)
FinSegun
SiNo
Escribir 'Não há usuário!'
Escribir funcionX2(limpiarpantallax2)
FinSi
2:
Escribir '************************'
Escribir '*      registo         *'
Escribir '************************'
Repetir
Escribir 'Digite um usuário'
Leer usuario10
Escribir 'Repita seu nome de usuário'
Leer usuario20
Borrar Pantalla
Si usuario10=usuario20 Entonces
Escribir '***********************************'
Escribir '*que tipo de segurança você quer  *'
Escribir '***********************************'
Escribir '1:senha'
Escribir '2:pin'
Leer OP2
Segun OP2  Hacer
1:
Repetir
Escribir 'insira uma senha'
Leer contraseña1
Escribir 'repita a senha'
Leer contraseña2
Borrar Pantalla
Si contraseña1=contraseña2 Entonces
Escribir 'Usuário criado com sucesso'
Escribir funcionX2(limpiarpantallax2)
SiNo
Si contraseña1<>contraseña2 Entonces
Escribir '*****************'
Escribir '*Repita a senha *'
Escribir '*****************'
FinSi
FinSi
Hasta Que contraseña1=contraseña2
2:
Borrar Pantalla
Repetir
Escribir 'enter a pin'
Leer pin1
Escribir 'repeat the pin'
Leer pin2
Si pin1=pin2 Entonces
Escribir 'Usuário criado com sucesso'
Escribir funcionX2(limpiarpantallax2)
SiNo
Si pin1<>pin2 Entonces
Borrar Pantalla
Escribir '****************'
Escribir '*Repita o pin  *'
Escribir '****************'
FinSi
FinSi
Hasta Que pin1=pin2
De Otro Modo:
Escribir funcionX2(limpiarpantallax2)
FinSegun
SiNo
Si usuario10<>usuario20 Entonces
Escribir '******************'
Escribir '*Repita o usuário*'
Escribir '******************'
FinSi
FinSi
Hasta Que usuario10=usuario20
3:
Escribir 'Com certeza você é?'
Escribir 'entre com seu nome de usuário'
Leer usuario10
Si usuario10=usuario20 Entonces
Borrar Pantalla
Repetir
Escribir 'Ok bem vindo '
Escribir 'O que você quer saber?'
Escribir '1:Meu nome de usuário'
Escribir '2:Minha senha'
Escribir '3:Meu pin'
Escribir '4:Voltar ao menu principal'
Leer seguridad
Borrar Pantalla
Segun seguridad  Hacer
1:
Escribir 'Seu nome de usuário é ',usuario10
Escribir funcionX2(limpiarpantallax2)
2:
Escribir 'Sua senha é ',contraseña1
Escribir funcionX2(limpiarpantallax2)
3:
Escribir 'O pino dele é ',pin1
Escribir funcionX2(limpiarpantallax2)
4:
Escribir funcionX2(limpiarpantallax2)
De Otro Modo:
Escribir 'Operação inválida'
Escribir funcionX2(limpiarpantallax2)
FinSegun
Hasta Que seguridad=4
FinSi
Si usuario10<>usuario20 Entonces
Escribir 'Usuário errado'
Escribir fun2(anim)
Escribir funcionX2(limpiarpantallax2)
FinSi
4:
Escribir 'Volte logo'
De Otro Modo:
Escribir 'Operação inválida'
Escribir funcionX2(limpiarpantallax2)
FinSegun
Hasta Que OP=4
De Otro Modo:
Escribir 'Invalid operation'
Escribir 'Operacion invalida'
Escribir 'Operação inválida'
FinSegun
FinAlgoritmo

pd:Por el tema de mi ortografía sufro de dislexia desde los 8 ;).
233  Programación / Scripting / Mi primer proyecto de python en: 25 Agosto 2020, 00:32 am
Hola a todos,Hace mas o menos 2 semanas comencé con python y decidí hacer un micro proyecto.El cual trata de Registrarse e Iniciar sesión,estoy seguro que en el futuro voy a volverlo a mirar y voy a decir.Dios que ***** de codigo....Pero bueno jeje algo es algo
Quiero opiniones  ::)
Código:
import os
import time

info = 4
ele = 4
us = 3
us2 = 0
co = 0
co2 = 0
loop = 4
loop2 = 4
loop3 = 5
def lp():
    print("Espere")
    time.sleep(0.5)
    print(".")
    time.sleep(0.5)
    print(".")
    time.sleep(0.5)
    print(".")
    os.system("cls")
    t1 = ""
    return t1
while loop3 > 3:
    print("*********************")
    print("*  1:Iniciar sesión *")
    print("*  2:Registrarse    *")
    print("*  3:Salir          *")
    print("* ¿Qué desea hacer? *")
    print("*********************")
    print("Solo puedes elegir una de esas opciones!")   
    ele  = input(":")
    ele = int(ele)
    os.system("cls")
    if ele == 1:
        print("Ingrse su usuario")
        con = input(":")
        if con == us:
            con = 1
            print("Ingrese su contraseña")
            con = input(":")
            if con == co2:
                print("Fin del programa")
                loop3 = 2
        elif con == "":
            print("Error!" + "\n" "Sino tiene un usuario cree uno")
            time.sleep(5)
            os.system("cls")         
    if ele == 2:
        b = "12"
        info = 1
        if us == 3:
            while loop2 > 2:
                b = "12"
                print("Ingrese una nombre de usuario")
                us = input(":")
                print("Repita su usuario")
                us2  = input(":")
                T1 = ""
                T2 = ""
                if us == "":
                    T1 = str(T1.replace("1" ,us))
                    T1 = str(T2.replace("2" ,us2))
                    if  T1 == T2 == "":
                        b = str(b.replace("12" ,""))
                        print("Debe ingresar un usuario")
                        time.sleep(2)
                        print(lp())
                if us != us2:
                    print("Ambos tienen que ser iguales")
                    print(lp())
                if b == "12":
                    if us == us2:
                        while loop2 > 2:
                            loop = False
                            b = "12"
                            print("Ingrese una contraseña")
                            co = input(":")
                            print("Repita la contraseña")
                            co2  = input(":")
                            T1 = ""
                            T2 = ""
                            if co == "":
                                T1 = str(T1.replace("1" ,co))
                                T1 = str(T2.replace("2" ,co2))
                                if  T1 == T2 == "":
                                    b = str(b.replace("12" ,""))
                                    print("Debe ingresar una contraseña")
                                    time.sleep(2)
                                    print(lp())
                            if co != co2:
                                print("Ambas tienen que ser iguales")
                                print(lp())
                            if b == "12":
                                if co == co2:
                                    print("Usuario creado exitosamente")
                                    loop2 = False
                                    loop = False
                                    ele = 4
                                    print(lp())
    if ele == 3:
        print("Adiós")
        loop3 = 2
234  Programación / Scripting / Sockets en: 20 Agosto 2020, 03:06 am
Chicos soy nuevo en esto de los sockets,logre hacer esto...¿Pero mi pregunta es con que puedo seguir ahora?
Servidor
Código:
import socket 
mi_socket = socket.socket()
mi_socket.bind(('192.168.1.31',8000 ))
mi_socket.listen(5) 


while True:
   conexion, addr = mi_socket.accept()
   print ("Nueva conexion establecida!")
   print(addr)
   respuesta1 = conexion.recv(1024)
   print(respuesta1)
   mensajeServidor = "Hola, te saludo desde el servidor!"
   conexion.send(mensajeServidor.encode())
   conexion.close() 
Cliente
Código:
import socket
mi_socket = socket.socket()
mi_socket.connect (('192.168.1.31', 8000))
MensajeCliente = "Hola, te saludo desde el cliente!"
mi_socket.send(MensajeCliente.encode())
repuesta = mi_socket.recv(1024).decode()
print(repuesta)
235  Foros Generales / Foro Libre / Re: Rutina de ejercicios? en: 20 Agosto 2020, 00:09 am
Que p**a locura estas diciendo machacador? te voy a pegar un cholazo como hacia tu mai cuando eras un pelao.
Entonces.....Pruebo con esas drogas??? (tengo 15 no creo que mi cuerpo lo resista)
236  Foros Generales / Foro Libre / Re: Rutina de ejercicios? en: 20 Agosto 2020, 00:07 am
Ve a un gimnasio y contacta con el que distribuye los esteroides anabolizantes... inyectate brazos,piernas y pecho todos los días por una semana, descansa una, y empieza el ciclo nuevamente la siguiente semana... en tres meses estarás como Rocky o Travolta...

 :rolleyes: :o :rolleyes:
Voy a ver,No creo que mi mami me de plata
237  Foros Generales / Foro Libre / Re: Rutina de ejercicios? en: 19 Agosto 2020, 04:39 am
Yo te recomendaría que hagas frontón. No es tan efectivo pero sí más divertido y aprendes cosas de técnica, como saques con slice.

Debería de buscar algún lugar para hacer, igual muchas gracias por la recomendación.
238  Foros Generales / Foro Libre / Rutina de ejercicios? en: 19 Agosto 2020, 04:23 am
Chicos yo quiero tener un mejor físico (no solo por el tema de las chicas y eso) sino por qué simplemente lo quiero y ya jaja.
Estoy haciendo está rutina
Pecho con barra 5 de 10 repeticiones
Pecho con mancuernas 5 de 8 repeticiones /
Flexiones sobre blanco 5 de 10 repeticiones /
Flexiones normales 5 de 10 repeticiones /
Sentadillas 3 series de 10 repeticiones
Plancha 5 series de 15 segundos /
Abdominales 5 series de 10 repeticiones /
Y también estoy comiendo saludable y hago también ayuno intermitente.
Mi pregunta es ¿creen que me dé algún tipo de resultado?
Gracias por leer
Pd:Perdón por si está mal redactado jeje
239  Foros Generales / Foro Libre / port y host en: 18 Agosto 2020, 21:36 pm
Como podría definir port y host en muy pocas palabras?
240  Seguridad Informática / Análisis y Diseño de Malware / Re: Malwares en: 16 Agosto 2020, 00:30 am
Una función para enviar un texto son 10 líneas de código. Y para recibirlo y procesarlo 13-14. En Python es muy muy sencillo. Después solo pones condicionales y lo que quieras hacer.

Necesitas hacer 1 o 2 programas.
En el caso de hacer 2 programas, 1 se ejecuta en la máquina "zombie" y otro en tu máquina (o una bajo tu control), para darle órdenes.

Tienes 2 tipos de conexión, directa y reversa. La directa requiere que el router del zombie tenga los puertos abiertos.
La reversa eres tú quien abre los puertos para habilitar al zombie conectarse a ti.

Si haces un solo programa, debes hacer un generador que crea los 2 programas cliente y servidor.

En la práctica los pasos que te recomiendo son:
- Programas un servidor con sockets y lo bindeas a un puerto local, por ejemplo 127.0.0.1:8080
  + Puedes probar con el propio navegador de internet (chrome, mozilla, edge, ...) si el servidor funciona visitando la dirección 127.0.0.1:8080/hola
  + Debes poder leer "GET /hola ..." al imprimir el texto recivido por el servidor.
  + La misión del servidor es recibir conexiones de zombies/clientes para poder responderle con comandos como: Enviame el nombre de tu sistema operativo. Ejecuta este programa que te mando.

- Programas el cliente. Su función es remplazar el navegador, de forma que puedas automatizar el envio de órdenes y ejecutar los comandos o acciones que envie el servidor. O si quieres algo super sencillo puedes olvidarte de programar el cliente y usar el navegador directamente para enviar órdenes.

- Una vez funciona en local tienes que remplazar la ip local 127.0.0.1:8080 por tu ip real y el puerto, para poder recibir conexiones de equipos fuera de tu red local (internet)
  + Hay un problema, las ip cambian, no siempre te dan la misma. Es decir, si pones tu ip en el código, un zombie lo usa y te cambian de ip jamás te llegará la conexión. Para solucionar esto debes usar un servicio DDNS. Te dan un prpgrama y un dominio. El dominio puede ser por ejemplo: mi-malware.com.tk entonces remplazas tu ip por el dominio en el código. El programa que te dan sirve para que el DDNS sepa cual es tu ip para cuando te la cambien resolver el dominio mi-malware.com.tk con tu nueva ip.
En el código usarías mi-malware.com.tk:8080 en lugar de 174.86.56.47:8080 por ejemplo.

- Lo siguiente es ir al router e indicar a que equipo de la red interna (tu pc) se le enviarán las órdenes mediante el puerto 8080.

- Una vez está esto listo, debes ser capaz de recibir la conexión y tú de enviarle texto al cliente de tu red.

- Una vez todo funcionando debes programar lo que quieres que haga el zombie. Descargar/enviar archivos, sacar capturas de pantalla, registrar las teclas, obtener el historial del navegador... Lo que consideres.

- El siguiente paso ya sería el tema de ocultación, proxies, automatización, técnicas antidebugging, escape de sandbox, persistencia, exfiltración con inyecciones en procesos, soporte multiplat... Esto ya es más avanzado.

Muchas gracias amigo
Páginas: 1 ... 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 [24] 25 26 27
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines