Potrzebuję program ustalający najmniejszą i największą wartość spośród n elementów tablicy w czasie 3/2n. W języku c, używając tylko for, if/else, int, printf, return. W wyjaśnieniem jak działa program i co robi w każdym wierszu. Za dobrą odp. daję naj.
" Life is not a problem to be solved but a reality to be experienced! "
© Copyright 2013 - 2024 KUDO.TIPS - All rights reserved.
Mam dwie wersje programu, pierwsza jest automatyczna wykozystujaca losowanie liczb, jest automatyczna podajemy tylko N z konsoli, natomiast druga wersja jest prostsza ale zarazem nieautomatyczna, bo podajemy l elementow tablicy i kazdy jej element.
wersja 1:
#include <stdio.h> //printf,scanf
#include <conio.h> //getch
#include <stdlib.h> //rand
void main()
{
int N; //wczytamy ilosc elementow tablicy z konsoli wiec deklarujemy potrzebna zmienna
printf("Ilosc elementow tablicy : ");
scanf("%d",&N);
int i,tab[N];
int min=1000,max=0; //ustalamy skrajne wartosci dla min i max
for (i=0;i<N;i++)
{
if (i%10==0) printf("\n"); //co 10 liczb robi "enter"
tab[i]=rand()%1000; //losuje liczby z zakresu 0-999
if (tab[i]>max) max=tab[i];
if (tab[i]<min) min=tab[i];
printf("%d, ",tab[i]);
}
printf("\nNajmniejsza liczba z wylosowanych liczb to : %d\nNajwieksza liczba z wyloswanych liczb to : %d",min,max);
getch();
}
wersja 2:
#include <stdio.h>
void main()
{
printf("Podaj ilosc elementow tablicy : ");
int N;
scanf("%d",&N);
int i,tab[N],min=1000000,max=-1000000; //deklarujemy i, tablice N-elementowa, pseudo wartosc maksymalna i minimalna przyjmujace skrajne zakresy
for (i=0;i<N;i++)
{
scanf("%d",&tab[i]); //wczytujemy zmienna z konsoli
if (max<tab[i]) max=tab[i]; //jezeli max jest mniejszy od liczby to wtedy max jest rowny tej liczbie
if (min>tab[i]) min=tab[i]; //jezeli min jest wiekszy od liczby to wtedy min jest rowny tej liczbie
}
printf("~~--~~--~~--~~--\nMaksymalna wartosc : %d\nMinimalna wartosc :%d\n~~--~~--~~--~~--",max,min);
}