NeverW Games

Tutorias Em Geral.


    Funções e Strings

    Compartilhe
    avatar
    C0D3R-X
    Noob
    Noob

    Mensagens : 12
    Data de inscrição : 12/01/2016

    Funções e Strings

    Mensagem por C0D3R-X em Qua Jan 13, 2016 5:05 pm

    Venho estudando atualmente funções e strings onde estou cursando SI, fiz alguns exercícios, alguns interessantes para se estudar e resolvi vim postar aqui para ajudar alguém que esteja começando.
    Não tem muito o que falar dos códigos, são todos bem simples.  cheers cheers
    A seguinte linha:
    PHP:
    Código:

    system("color 0A")

    É apenas por capricho meu, faz alteração da cor das letras para verde.

    Caso surja alguma dúvida relacionada aos exercícios ou a funções/string, deixe ai a pergunta que estarei respondendo quando der.

    1 - recebe uma letra qualquer passando ela para maiúscula.
    PHP:
    Código:

    #include <stdio.h>
    #include <stdlib.h>

    char function(char a)
    {
        char letra;
        
        if ( a == 'a' )
        {
            letra = 'A';
            return(letra);
        }
        
        else if ( a == 'b')
        {
            letra = 'B';
            return(letra);
        }
        
        else if ( a == 'c' )
        {
            letra = 'C';
            return(letra);
        }
        
        else if ( a == 'd' )
        {
            letra = 'D';
            return(letra);
        }
        
        else if ( a == 'e' )
        {
            letra = 'E';
            return(letra);
        }
        
        else if ( a == 'f' )
        {
            letra = 'F';
            return(letra);
        }
        
        else if ( a == 'g' ){
            letra = 'G';
            return(letra);
        }
        
        else if ( a == 'h' )
        {
            letra = 'H';
            return(letra);
        }
        
        else if ( a == 'i' )
        {
            letra = 'I';
            return(letra);
        }
        
        else if ( a == 'j' ){
            letra = 'J';
            return(letra);
        }
        
        else if ( a == 'k' )
        {
            letra = 'K';
            return(letra);
        }
        
        else if ( a == 'l' )
        {
            letra = 'L';
            return(letra);
        }
        
        else if ( a == 'm' )
        {
            letra = 'M';
            return(letra);
        }
        
        else if ( a == 'n' )
        {
            letra = 'N';
            return(letra);
        }
        
        else if ( a == 'o' )
        {
            letra = 'O';
            return(letra);
        }
        
        else if ( a == 'p' )
        {
            letra = 'P';
            return(letra);
        }
        
        else if ( a == 'q' )
        {
            letra = 'Q';
            return(letra);
        }
        
        else if ( a == 'r' )
        {
            letra = 'R';
            return(letra);
        }
        
        else if ( a == 's' )
        {
            letra = 'S';
            return(letra);
        }
        
        else if ( a == 't' )
        {
            letra = 'T';
            return(letra);
        }
        
        else if ( a == 'u' )
        {
            letra = 'U';
            return(letra);
        }
        
        else if ( a == 'v' )
        {
            letra = 'V';
            return(letra);
        }
        
        else if ( a == 'w' )
        {
            letra = 'W';
            return(letra);
        }
        
        else if ( a == 'x' )
        {
            letra = 'X';
            return(letra);
        }
        
        else if ( a == 'y' )
        {
            letra = 'Y';
            return(letra);
        }
        
        else if ( a == 'z' )
        {
            letra = 'Z';
            return(letra);
        }
    }

    main()
    {
        system("color 0A");
        char letra,resultado;
        printf("digite uma letra: ");
        scanf(" %c", &letra);
        resultado = function(letra);
        printf("a letra maiuscula e: %c\n", resultado);
        system("pause");
    }

    2 - recebe um caractere qualquer e diz se ele é um digito (0 à 9)
    PHP:
    Código:

    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>

    char* function (char a)
    {
        if ( a == '0' )
        {
            return("caractere digitado e um digito.");
        }
        
        else if ( a == '1' )
        {
            return("caractere digitado e um digito.");
        }
        
        else if ( a == '2' )
        {
            return("caractere digitado e um digito.");
        }
        
        else if ( a == '3' )
        {
            return("caractere digitado e um digito.");
        }
        
        else if ( a == '4' )
        {
            return("caractere digitado e um digito.");
        }
        
        else if ( a == '5' )
        {
            return("caractere digitado e um digito.");
        }
        
        else if ( a == '6' )
        {
            return("caractere digitado e um digito.");
        }
        
        else if ( a == '7' )
        {
            return("caractere digitado e um digito.");
        }
        
        else if ( a == '8' )
        {
            return("caractere digitado e um digito.");
        }
        
        else if ( a == '9' )
        {
            return("caractere digitado e um digito.");
        }
        
        else
        {
            return("caractere digitado nao e um digito.");
        }
    }

    main()
    {
        system("color 0A");
        char letra,*resultado;
        printf("digite um caractere: ");
        scanf(" %c", &letra);
        resultado = function(letra);
        printf("%s", resultado);
        system("pause");
    }

    3 - recebe uma string, e retorna quantas consoantes ela possui.
    PHP:
    Código:

    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>

    int function(char* a)
    {
        int i,total,str;
        char letra,ascii;
        letra = 'a';
        total = 0;
        ascii = 0;
        str = strlen(a);
        
        for( i=0; i<str; i++ ){
            
            for( ascii=0; ascii<27; ascii++ ){
                if( a[i] == ( letra + ascii ) && ( a[i] != 'a' ) && ( a[i] != 'e' ) && ( a[i] != 'i') && ( a[i] != 'o') && ( a[i] != 'u' ))
                {
                    total++;
                }
            }
        }
        
        return(total);
    }

    main()
    {
        system("color 0A");
        int resultado;
        char a;
        char string[50];
        printf("digite uma frase: ");
        fflush(stdin);
        fgets(string,50,stdin);
        resultado = function(string);
        printf("numero de consoantes da string e: %d", resultado);
        system("pause");
    }

    4 - faz a troca das vogais por números de 1 à 5 respectivamente
    PHP:
    Código:

    #include <stdlib.h>
    #include <stdio.h>

    main(){
        char str[100];
        int i;
        system("color 0A");
        
        printf("digite sua frase: ");
        scanf("%[^\n]s", &str);
        for(i=0; i<strlen(str); i++){
            if(str[i] == 'a' || str[i] == 'A'){
                str[i] = '1';
            }
            if(str[i] == 'e' || str[i] == 'E'){
                str[i] = '2';
            }
            if(str[i] == 'i' || str[i] == 'I'){
                str[i] = '3';
            }
            if(str[i] == 'o' || str[i] == 'O'){
                str[i] = '4';
            }
            if(str[i] == 'u' || str[i] == 'U'){
                str[i] = '5';
            }

        }
        printf("%s", str);
        system("pause");
    }

    avatar
    Cayo ADM
    Admin

    Mensagens : 13
    Data de inscrição : 12/01/2016
    Localização : São Paulo

    Re: Funções e Strings

    Mensagem por Cayo ADM em Qua Jan 13, 2016 5:07 pm

    Todos os códigos poderiam ser simplificados, mas principalmente o, 1 e 2.

    No 1, você poderia usar a tabela asci, verificar se o caracter é realmente minusculo e se for basta subtrair 32 , que equivale ao carácter maiúsculo.
    No 2, bastasse usar o operador "or" if(letra == '0' || letra == '1' etc... )
    No 3, faz o for como você fez percorrendo a string como fez , só não precisa do outro for, uma simples verificação string != a && string != e etc...
    o 4 ta ok rs.

      Data/hora atual: Qua Dez 13, 2017 6:05 am