Utilizando arrays, funções e arquivos de texto
Publicado por Diego Hernandes Soares Alves 24/01/2009
[ Hits: 6.932 ]
Homepage: http://www.he.rnand.es/
O programa lê valores em um arquivo de texto, armazena-os em um array e depois informa o maior por meio de uma função.
Crie um arquivo de texto na mesma pasta e informe as notas separadas por espaço.
Fonte C++ originada da proposta de programação do curso de introdução a programação da Universidade Federal de Viçosa.
// Programa criado por Diego Hernandes Soares Alves // Proposta de programação do curso de Introdução a programação I da UFV // Para iniciantes, programa que le valores em um arquivo de texto, os coloca em um arranjo // e informa qual o maior valor, também server para aqueles que querem começar a dar uma olhada em funções #include <iostream> #include <fstream> #include <stdlib.h> using namespace std; const int NUM_MAX_DADOS = 15; void leiadados(double A[], int &n ) { char nomeArquivo[256]; ifstream arqDados; double valor; cout << "\nDigite o nome do arquivo com os dados: " << flush; cin.get(nomeArquivo, 256); cin.ignore(NUM_MAX_DADOS, '\n'); arqDados.open(nomeArquivo); if ( arqDados.fail() ) { cerr << "Falha ao abrir o arquivo " << nomeArquivo << '\n'; exit(1); } n = -1; while ( !arqDados.eof() && n < NUM_MAX_DADOS -1 ) { arqDados >> valor; if ( arqDados.fail() ) break; n++; A[n] = valor; } cout << '\n' << ++n << " Valor(es) lido(s)" << endl; //Verifica se a leitura terminou antes de ler completamente os dados //do arquivo if ( !arqDados.eof() ) { cerr << "\n***Erro: o número de dados ultrapassou o máximo permitido\n" << " ou algum dado ilegal no arquivo de entrada\n"; arqDados.close(); exit(2); } arqDados.close(); } // fim de leidados double maximo(double A[], int m) { double max; max = A[0]; for ( int k = 1; k < m; k++ ) if ( A[k] > max ) max = A[k]; return max; } int main() { double dados[NUM_MAX_DADOS]; int numDados; cout << "Determinação do valor máximo contido em um arranjo"; "de números reais\n\n"; leiadados(dados, numDados); if ( numDados > 0 ) { cout << "\nValor máximo: " << maximo(dados, numDados); } else cout << "\nNão há nada a determinar"; cout << endl; return 0; }
Parte 7 - Sessão de estudo sobre VETORES
Barra de progresso em forma de "roda"
Cálculo de Bhaskara para raízes reais e complexas
vetor01.c (programa que envolve vetor, simples)
Nenhum comentário foi encontrado.
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Desktop Linux ganha novos apps enquanto IA invade o noticiário
Blender 5.0 Beta, Firefox 144 e avanço da IA dominam o dia no mundo Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Baixar jogos Independentes para Ubuntu [RESOLVIDO] (4)
PIP3 - erro ao instalar módulo do mariadb para o Python (1)
Linux x Plataformas de Trading - um problema (in-)solúvel? (4)