#include <iostream>
#include <locale>
using namespace std;
int main(){
setlocale(LC_ALL,"ptb");
int idade;
char *categoria;
cout<<"informe a idade do participante: ";
cin>>idade;
while(idade!=-1){
if(idade>=7 && idade<=12){
categoria="INFANTIL";
}
else if(idade>12 && idade<=17){
categoria="JUVENIL";
}
else if(idade>17 && idade<=49){
categoria="ADULTO";
}
else if(idade>=50){
categoria="SÊNIOR";
} else{
cout<<"Infelizmente o candidato ainda não pode participar!";
} cout<<"O participante está na categoria "<<categoria << " \n ";
cout<<"Informe a idade do participante: ";
cin>>idade;
}
}
então pessoal esse é meu codigo, está funcionando bonitinho, porém quando eu faço o teste da ultima opção do encadeamento else, que está em vermelho, aparece o resto do codigo também, o que está em verde, tem alguma maneira de fazer essas ultimas mensagens não aparecerem? não quero ter que colocar saídas(cout) em todos os if's e elses.
Estou tentando rodar um projeto de um jogo na minha maquina porem o mesmo pede para adicionar o log4cxx 0.10.0, realizei pesquisas na internet a respeito mas até agora nada, Encontre para baixar nesse site https://logging.apache.org/log4cxx/1.0.0/download.html porem não sei se devo instalar ele no windows porque ao exportar ele no projeto as depêndencias que precisam dele ficam informando o erro log4cxx.logger.h no such file or directory. a linguagem que estou usando e C++
Elabore um algoritmo que possa descobrir, através de perguntas e respostas, qual meio de transporte o usuário está pensando.
O usuário deverá escolher uma das seguintes opções:
- Trator
- Moto
- Bicicleta
- Trem
- Carro
- Caminhão
- Ônibus
- Paraquedas
- Balão
- Avião
- Helicóptero
- Submarino
- Barco
- Navio
- Lancha
Para chegar ao resultado, só devem ser usadas perguntas que retornem "Sim" ou "Não".
Exemplo:
É terrestre? Sim.
Cabe apenas uma pessoa? Sim.
É pesado? Não.
Tem pedal? Sim.
boa tarde, podem me ajudar em uma logica ?
tenho um numero exemplo 300 , quero aumentar ele sempre +1 , tipo usuario digitou que precisa de 50 numeros depois dos 300 exemplo : 301,302,303... ate 305.
O que me recomendam fazer ? um array ou for somando +1 ?
Bom dia Pessoal, tudo bem?
O problema aqui está mais para matematica do que para programação. Mas como sei que aqui só tem fera e pode ser que alguem tenha passado por algo semelhante...
Tenho um cliente que precisa de uma página, onde ele coloca o valor do produto a vista, e ele joga o valor com as taxas da maquinha de cartão dele...
A principio é tranquilo, pega o valor, soma taxa, multiplica taxa e pronto...
O problema é que essas taxas são cobradas em cima do valor final, o que depois dos descontos acaba saindo abaixo do valor a vista.
E ele que receber o valor á vista, deixando para o cliente pagar essa diferença...
Como resolver essa questão? Alguém poderia me ajudar?
I'm new to C and C++ programming, can anyone give me a hint on what I'm doing wrong here. I'm trying to write to concat function that takes to pointers to chars and concatenates the second to the first. The code does do that, but the problem is that it adds a bunch of junk at the end.
For instance, when passing the arguments - "green" and "blue", the output will be "greenblue" plus a bunch of random characters. I also wrote the strlen function that strcat uses, which I will provide below it for reference. I'm using the online compiler at InterviewBit The exact instructions and specification is this:
int main(int argc, char** argv)
{
const int MAX = 100;
char s1[MAX];
char s2[MAX];
cout << "Enter your first string up to 99 characters. ";
cin.getline(s1, sizeof(s1));
int size_s1 = strlen(s1);
cout << "Length of first string is " << size_s1 << "\n";
cout << "Enter your second string up to 99 characters. ";
cin.getline(s2, sizeof(s2));
int size_s2 = strlen(s2);
cout << "Length of second string is " << size_s2 << "\n";
cout << " Now the first string will be concatenated with the second
string ";
char* a = strcat(s1,s2);
for(int i = 0; i<MAX; i++)
cout <<a;
// system("pause");
return 0;
}
//strcat function to contatenate two strings
char* strcat(char *__s1, const char *__s2)
{
int indexOfs1 = strlen(__s1);
int s2L = strlen(__s2);
cout <<s2L << "\n";
int indexOfs2 = 0;
do{
__s1[indexOfs1] = __s2[indexOfs2];
indexOfs1++;
indexOfs2++;
}while(indexOfs2 < s2L);
return __s1;
}
//Returns length of char array
size_t strlen(const char *__s)
{
int count = 0;
int i;
for (i = 0; __s != '\0'; i++)
count++;
return (count) / sizeof(__s[0]);
#include <iostream>
#include <locale>
using namespace std;
int main(){
setlocale(LC_ALL,"ptb");
int idade;
char *categoria;
cout<<"informe a idade do participante: ";
cin>>idade;
while(idade!=-1){
if(idade>=7 && idade<=12){
categoria="INFANTIL";
}
else if(idade>12 && idade<=17){
categoria="JUVENIL";
}
else if(idade>17 && idade<=49){
categoria="ADULTO";
}
else if(idade>=50){
categoria="SÊNIOR";
}
else{
cout<<"Infelizmente o candidato ainda não pode participar!";
}
cout<<"O participante está na categoria "<<categoria << " \n ";
cout<<"Informe a idade do participante: ";
cin>>idade;
}
}
então pessoal esse é meu codigo, está funcionando bonitinho, porém quando eu faço o teste da ultima opção do encadeamento else, que está em vermelho, aparece o resto do codigo também, o que está em verde, tem alguma maneira de fazer essas ultimas mensagens não aparecerem? não quero ter que colocar saídas(cout) em todos os if's e elses.
Obs: to aprendendo peguem leve.
Compartilhar este post
Link para o post
Compartilhar em outros sites