De ce nu apare nimic dupa ce introduc valori?
#include
using namespace std;
int main(){
long v[1001];
unsigned n,i,max=0,min=100000,x,y;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
for(i=1;i<=n;i++)
{
if(v[i]>max)
{max=v[i];
y=i;}
if(v[i]
{min=v[i];
x=i;}}
for(i=x;i<=y;i++)
cout<<v[i]<<' ';
Răspunsuri la întrebare
Răspuns de
1
Vezi ca la conditia de minim nu ai scris tot, poate doar aici cand ai transcris: if (v[i] < min). Referitor la faptul ca nu iti afiseaza nimic, am înțeles din algoritm ca vrei sa afisezi numerele cuprinse intre cel mai mic si cel mai mare element din vecrorul v, si exista o situatie in care nu ti afiseaza nimic: atunci cand minimul este plasat in vecror dupa maxim.
Exemplu: v[] = { 4, 5, 2, 98, 1, 7, -3, 8}
- in acest caz for- ul tau va porni de la pozitia 6 (sau 7 daca incepi de la 1) si va merge pana la pozitia 3 (sau 4 daca incepi de la 1), cu alte cuvinte, nu se va intra in blocul for
- rezolvare: inainte de afisare compara cele doua pozitii si pornește afisarea de la cea mai mica
Exemplu: v[] = { 4, 5, 2, 98, 1, 7, -3, 8}
- in acest caz for- ul tau va porni de la pozitia 6 (sau 7 daca incepi de la 1) si va merge pana la pozitia 3 (sau 4 daca incepi de la 1), cu alte cuvinte, nu se va intra in blocul for
- rezolvare: inainte de afisare compara cele doua pozitii si pornește afisarea de la cea mai mica
grasuxxl30:
Problema era ca am pus 100000 la unsigned cred..Oricum , mersi pentru raspuns.
Alte întrebări interesante
Matematică,
8 ani în urmă
Studii sociale,
8 ani în urmă
Istorie,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă