Ir ao conteúdo

Posts recomendados

Postado

Preciso de ajuda, pois não consigo puxar a string cat, na função.

 

 

<#include <iostream> 
#include <string.h>
#include <algorithm>
#include <string>
using namespace std;

/* Faça uma função que recebe a idade de um nadador por parâmetro e retorna a categoria desse nadador de acordo com a tabela abaixo:

Idade Categoria

5 a 7 anos Infantil A

8 a 10 anos Infantil B

11-13 anos Juvenil A

14-17 anos Juvenil B

Maiores de 18 anos (inclusive) Adulto

A chamada da função deve estar em uma estrutura de repetição.*/

string categoria(){
int idade;
string cat;
    
    while (idade <5){
        
        cout << "Insira da idade :" << endl;
        cin >> idade;
        
        if ( idade >=5 && idade <=7){
            cat = 'Infantil A';
        }
        else{
                if ( idade >=8 && idade <=10){
            cat = 'Infantil B';
                }
                else {
                    if ( idade >=11 && idade <=13){
                cat = 'Juvenil A';
                }
                    else{
                        if ( idade >=14 && idade <=17){
                        cat = 'Juvenil B';
                        }
                        else {
                            cat = 'Adulto';
                        }
                    
                }
            }
        }
    
    return cat;

    
}
}


int main() {
    int idade;
    
    cout << "Qual Categoria: " << categoria(idade) << endl;
    
    return 0;
}

>

  • Obrigado 1
  • Amei 1
Postado

ve nao colocou a estrutura de repetição nem os parametros e tem algumas coisas desnecessarias tambem tenta assim.

#include <iostream> 
#include <string.h>
#include <stdio.h>
using namespace std;
/* Faça uma função que recebe a idade de um nadador por parâmetro e retorna a categoria desse nadador de acordo com a tabela abaixo:
Idade Categoria
5 a 7 anos Infantil A
8 a 10 anos Infantil B
11-13 anos Juvenil A
14-17 anos Juvenil B
Maiores de 18 anos (inclusive) Adulto
A chamada da função deve estar em uma estrutura de repetição.*/
char verifica(int *idade){
        char cat[20];
        if ( *idade >4 && *idade <8){
           strcat(cat,"Infantil A");
        }
        else if ( *idade >7 && *idade <11){
            strcat(cat,"Infantil B");
    	}
        else if ( *idade >10 && *idade <14){
            strcat(cat,"Juvenil A");
        }
        else if ( *idade >13 && *idade <18){
            strcat(cat,"Juvenil B");
        }
        else {
			strcat(cat,"Adulto");
        }
   		return *cat;
    }
int main() {
    int idade;
    cout << "Digite a idade: " << endl;
    cin >> idade;
    while(idade>4){//DECLARANDO ESTRUTURA DE REPETIÇÃO
    char cat= verifica(&idade);
    cout << cat << endl;
    }
}

 

  • Curtir 1
Postado

@Hiago Silva      para adicionar dados na string precisa colocar entre aspas duplas " "  , então seu código com algumas modificações poderia ser assim  :

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <string>
#include <cstring>
#include<windows.h>
#define u GetStdHandle(STD_OUTPUT_HANDLE)
#define textcolor_2(l,f) SetConsoleTextAttribute(u,l+(f<<4))
/* Faça uma função que recebe a idade de um nadador por parâmetro e retorna
   a categoria desse nadador de acordo com a tabela abaixo:
   Idade      Categoria
 5 a  7 anos    Infantil A
 8 a 10 anos    Infantil B
11 a 13 anos    Juvenil  A
14 a 17 anos    Juvenil  B
acima de 17 anos Adulto
A chamada da função deve estar em uma estrutura de repetição.*/
using namespace std;
string categoria(int idade){/* recebe a variável idade , por parâmetro */
    string cat;
    /*cout << "Insira da idade : ";
    cin >> idade;*/
    if( idade >=5 && idade <=7)
        cat = "Infantil A";
    else
        if( idade >=8 && idade <=10)
            cat = "Infantil B";
        else
            if( idade >=11 && idade <=13)
                cat = "Juvenil A";
            else
                if( idade >=14 && idade <=17)
                    cat = "Juvenil B";
                else
                    cat = "Adulto";
    return cat;
}
int main(){
    int idade,ok;
    do{
        textcolor_2(14,0);
        cout<<"insira a idade : ";
        textcolor_2(11,0);
        fflush(stdin);
        cin>>idade;
        textcolor_2(12,14);
        cout<<" Qual Categoria: "<<categoria(idade)<<"  "<<endl<<endl;
        cout<<"Verificar Outro Nadador S/N ";
        cin.clear();
        fflush(stdin);
        ok=cin.get();
        cout<<"ok "<<ok<<endl;
        if( ok=='n' || ok=='N')break;
    }while( 1 );
    textcolor_2(10,12);
    return 0;
}

 

  • Obrigado 1
Postado

Passando só para deixar minha contribuição 😅:

#include <iostream>

using std::string;
using std::cout;
using std::cin;

string getCategoria(int idade) {
    if (idade >= 18)
        return "Adulto";
    else if (idade >= 14)
        return "Juvenil B";
    else if (idade >= 11)
        return "Juvenil A";
    else if (idade >= 8)
        return "Infantil B";
    else if (idade >= 5)
        return "Infantil A";
    else
        return "Idade Inválida";
}

int main() {
    int idade = 0;
    string categoria = getCategoria(idade);

    cout << "Digite sua idade: ";
    cin >> idade;

    cout << "-------------------------------- \n"
         << "    Idade: " << idade << "\n"
         << "Categoria: " << categoria << "\n"
         << "-------------------------------- \n";
    return 0;
}

 

  • Curtir 1
  • Amei 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!