algoritmo
from random import randint numeros = [ ] #Gera uma lista de 100 números aleatórios for x in range(100): item = randint(1, 999) while item in numeros: #Para garantir que a lista não vai ter números repetidos item = randint(1, 999) numeros.append(item) maior = numeros[0] menor = numeros[0] for x in numeros: if x > maior: maior = x if x < menor: menor = x print(maior, menor)
Parceiro como você não especificou em qual linguagem eu fiz em C que da para converter em praticamente qualquer coisa.
Fiz uma função que percorre um vetor de tl posições e vai comparando o valor corrente iniciando de 0 até tl com um comparador iniciado com a posição 0 do vetor.
caso a posição corrente tiver um valor maior que a do comparador, este recebe o valor da posição.
Repare que a comparação foi feita com um operador ternário que trabalha como um if/else, (expressão lógica)?resultado se verdadeiro:resultado se falso;
Para ler os 100 valores eu usei um loop e a função rand() da time.h para gerar numeros aleatórios entre 1 e 100, mas você pode substituir por um scanf("%d",vet[cont]) se quiser realmente digitar os 100 valores.
Espero ter ajudado.
/*
* File: main.cpp
* Author: joao
*
* Created on 2 de Abril de 2017, 15:35
*/
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
using namespace std;
/*
*
*/
int maior(int vet[],int tl) {
int maior=vet[0];
for(int i=0;i<tl;i++){
maior=(vet[i]>maior)?vet[i]:maior;
}
return maior;
}
int menor(int a, int b) {
(a < b) ? a : b;
return (a < b) ? a : b;
}
int main(int argc, char** argv) {
int vet[100], cont=0;
srand (time(NULL));
while (cont < 100) {
vet[cont]=rand() % 100 + 1;
printf("Valor inserido valor [%d]: ",vet[cont]);
cont++;
}
printf("\n O Maior valor inserido foi: < %d > ",maior(vet,cont));
return 0;
}
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
using namespace std;
/*
*
*/
int maior(int vet[],int tl) {
int maior=vet[0];
for(int i=0;i<tl;i++){
maior=(vet[i]>maior)?vet[i]:maior;
}
return maior;
}
int main(int argc, char** argv) {
int vet[100], cont=0;
srand (time(NULL));
while (cont < 100) {
vet[cont]=rand() % 100 + 1;
printf("Valor inserido valor [%d]: ",vet[cont]);
cont++;
}
printf("\n O Maior valor inserido foi: < %d > ",maior(vet,cont));
return 0;
}
o outro codigo foi com uma funçaõ menor que tava perdida ali....kkkk
Para escrever sua resposta aqui, entre ou crie uma conta
Programação I
•CEFET/MG
Projeto e Desenvolvimento de Algoritmos
Compartilhar