Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
André Luiz Feijó

C++ Exercício C++ apresentar o maior e o menor número

Recommended Posts

Sou iniciante em C++ e ando fazendo alguns exercícios. Estou em um exercício onde o programa pede ao usuário 10 números e depois apresenta o maior e o menor.

Fiz o código da seguinte forma: 

 

#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <locale.h>

using namespace std;



int main(int nNumberofArgs, char* pszArgs[])
{
    setlocale(LC_ALL, "portuguese");



    int i, final, nMax = 10;
    double nAux, nNumeros[10];



    printf("Determine 10 números\n");



    for(i = 0; i < nMax; i++)
    {
        cout << i + 1 << ": ";
        cin >> nNumeros;
    }



    do{
        final = 0;
        for(i = 0; i < nMax; i++)
        {
            if(nNumeros > nNumeros[i+1])
            {
                nAux = nNumeros;
                nNumeros = nNumeros[i+1];
                nNumeros[i+1] = nAux;
                final = 1;
            }
        }
    }while(final);



    cout << "Maior número: " << nNumeros[9] << endl;
    cout << "Menor número: " << nNumeros[0] << endl;

    system("PAUSE");
    return 0;
}

 

De fato, o menor valor funciona, porém o maior sempre imprime lixo. Já li e reli milhares de vezes o código, mudei várias coisas... Nada Funciona... 

Alguma dica??

 

Editado por DiF
Inserir o código com o botão CODE <>
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Favor se possível deletar o post.

Editado por Benjamin Breeg
Interpretação errada da pergunta, fora do assunto do tópico.
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@André Luiz Feijó      seu código está bom,  mas você esqueceu de colocar em qual posição do vetor você está  inserindo o número no primeiro loop,  e o modo como você quer organizar os números no vetor é quase isso mesmo que você fez, mas precisa de dois loop um dentro do outro para percorrer o vetor e comparar cada   números com todos os outros números,  e para isso você pode usar o método bublesort de organização de vetor .  então seu código ficaria assim :

#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <locale.h>
using namespace std;
int main()
{
    setlocale(LC_ALL, "");
    int i,j,nMax = 10;
    double nAux, nNumeros[10];
    printf("Determine 10 números\n");
    for(i = 0; i < nMax; i++)
    {
        cout << i + 1 << "º Número : ";
        cin >> nNumeros[i];/*aqui precisa da posição no vetor */
    }
    for(i = 0; i < nMax; i++)/* método bublesort para ordenar vetor */
    {
        for(j=i+1;j<nMax;j++)
        {
            if(nNumeros[i] > nNumeros[j])
            {
                nAux        = nNumeros[i];
                nNumeros[i] = nNumeros[j];
                nNumeros[j] = nAux;
            }
        }
    }
    cout << endl;
    cout << "Maior número: " << nNumeros[9] << endl;
    cout << "Menor número: " << nNumeros[0] << endl;
    cout << endl;
    system("PAUSE");
    return 0;
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigadão pela ajuda, Devair! Realmente me esqueci do i

Obrigado mesmo!

Editado por André Luiz Feijó
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×