Algoritmos
Por: lucimarascheffer • 12/4/2015 • Projeto de pesquisa • 3.994 Palavras (16 Páginas) • 391 Visualizações
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
int main(void)
{
char palavra[20],palavra2[10],palavra1[10];// para declarar a string
char senha[6];
int senhan[6];
char alfabeto[49] = "abcdefghijklmnopqrstuwxzABCDEFGHIJKLMNOPQRSTUWXZ";
char letraaux[1]; // auxiliar para pegar uma letra da palavra digitada
char letrasenhaaux[1]; // auxiliar para pegar o numero da senha para fazer deslocamento
char forma[5]; // modo se para cifrar ou decifrar
int i,j,k,m,tam,desloca,ind,len,lenpalavra; // variaveis para indexação - posição da palavra
int ok;// para verificar o tamanho da senha
printf("DIFITE A FORMA D PARA DECIFRAR E C PARA CIFRAR S para Sair\n");// começando o programa parte usuario
scanf("%c",forma);
while(forma[0] != 'S')// enquanto a forma for diferente de S vai executando o programa
{
if (forma[0] != 'S')
{
printf("DIGITE A PALAVRA\n");
scanf("%s",palavra);
printf("digite a senha\n");
scanf("%s",senha);
for (i=0;i<6;i++)
{
letrasenhaaux[0] = senha[i];// pegando a senha em caracter
senhan[i] = atoi(letrasenhaaux);// convertendo a senha em numérico
}
for (i=0;i<6;i++)// verificando até quando a senha chega a zero
{
if ((senhan[i]==0) && (senha[i-1] > 0) && (i > 0))// len verifica o final da senha
{
len = i ;
}
}
ok = 1;
if ((len < 4) || (len > 6))
{
ok = 0;
printf("Sua senha: %i, digite outra senha >= 4 e <= 6\n",len);// verificando o tamanho da senha para ver se está correta
}
/* for (i=0;i<6;i++) // Tem que descobrir se foi só digitado numeros
{
ok = 0;
if ((senha[i] == "1") || (senha[i] == "2") || (senha[i]== "3") || (senha[i] == "4") || (senha[i] == "5") || (senha[i] == "6") || (senha[i] == "7") || (senha[i] == "8") || (senha[i] == "9") || (senha[i] == "0"))
{
ok = 1;
}
}*/
if (ok == 1)// se o ok igual a um continua o programa
{
ind = 0;// é um auxiliar para percorrer os vetores de senha
if (ok==1)
{
for (i=0;i<20;i++)
{
letraaux[0] = palavra[i];//letra aux so tem uma posição recebe a palavra que i está percorrendo
if (i >= len )// len é o tamanho do vetor da senha
{
if (ind >= len)// se o indexador da senha for maior que o tamanho do vetor volta para posição zero
{
ind = 0;
}
letrasenhaaux[0] = senha[ind];// letra aux pega a posição que está a senha
ind++;// ir para a proxima posição - proximo numero
}
else
{
letrasenhaaux[0] = senha[i];// faz o desloca para transformar o caracter digitado em numerico
}
desloca = atoi(letrasenhaaux);
for (j = 0;j<48;j++)// j para percorrer todo alfabeto seja letra maiuscula ou minuscula
{
if (letraaux[0] == alfabeto[j])//se a letraaux for igaul a letra do alfabeto que estou percorrendo
...