#include <iostream>
#include <cmath>
#include <stdlib.h>
using namespace std;
int main() {
char numeros[100],ordem[100];
int i, tamanho, num1, num2, menor, maior;
i=0;
tamanho=0;
num1=0;
num2=0;
menor=11;
maior=0;
cout << "Digite alguns numeros de maneira completamente aleatoria: ";
cin >> numeros;
system("cls");
//While que analisa numero por numero
while(numeros[i] !='\0') {
//Se o resto for igual a zero (isso significa q ele é par) ele add 1 na variavel num1, caso contrario ele adiciona uma na variavel num2 que seria a variavel para os impares.
if(numeros[i]%2 == 0 ) {
num1++;
} else {
num2++;
}
//Se esse elemento da array for menor que o da variavel num3 ele substitui o numero. Essa variavel tem valor 11 de natureza para qualquer elemento ja substituir ela.
if(numeros[i]>=maior) {
maior=numeros[i];
}
//Se esse elemeneto da array for maior que o da variavel num4 ele substitui esse numero, Essa variavel tem valor 0 de natureza para qualquer elemento ja substituir ela.
if(numeros[i]<=menor) {
menor=numeros[i];
}
//adiciona mais 1 para analisar o proximo elemento da array.
i++;
tamanho++;
}
//Mostra os valores pedidos no final.
cout << "Quantidade de numeros: " << tamanho << endl;
cout << "Quantidade de numeros pares: " << num1 << endl;
cout << "Quantidade de numeros impares: " << num2 << endl;
cout << "O menor numero e o: " << menor << endl;
cout << "O maior numero e o: " << maior;
return 0;
}
O código tem mais coisa, no caso ele mostra quantos números tem, quantos são pares e quantos são impares. Eu queria mostrar qual o maior e o menor dos valores digitados, porém n esta dando certo, aparece uns valores muito estranhos tipo 56 como maior valor, o que está de errado ?