Maksymalna wartość pewnej talbicy

0

Witam !
Mam następujący problem :
Program ma tworzyć N-elementową tablicę (wszystko ok na razie), ma znaleźć maxa tej tablicy (działa), znaleźć gdzie jest największy skok wartości między elementami tablicy (np. 2 3 7 1 3 - to max jest 7 a największy skok jest 6 (7-1) - nie do końca działa).Następnie program ma porównać największy skok z 1, jeśli jest większy od jeden to zastąpić ma największy element tablicy x dwoma elementami o wartościach równych x/2.

Proszę o pomoc w zadaniu !
Z góry dzięki za pomoc

Kod:

 
#include <iostream>
#include <cmath> 

using namespace std;

float *tablica;
float *tablica2;
int N,stop,ile;
float maximum,x,b,maximums;








void wartosci()
{
     cout<<"Podaj dlugosc tablicy : ";
     cin>>N;
     tablica = new float[N];
     cout<<endl;
     for(int i=0; i<N; i++)
     {
              cout<<"tablica["<<i<<"] : ";
              cin>>tablica[i];
     } 
}

void max()
{
     for(int i = 0; i < N; i++) 
     maximum = tablica[0];
     for(int i = 1; i < N; i++)
     if(tablica[i] > maximum) maximum = tablica[i];
     cout <<"Maksymalna wartosc talbicy : "<<maximum<<endl;
     

    
}



void wyswietlanie()
{
    
    cout<<"Tablica wejsciowa : ";
    for (int i=0;i<N;i++)
    {
         
         cout<<tablica[i]<<" ";
         
     }
     cout<<endl;

}


void skok()
{
     cout<<"Poszczegolne skoki : ";
     tablica2 = new float[N-1];
     for (int i=0;i<N-1;i++)
     {
         b=tablica[i]-tablica[i+1];
         tablica2[i]=b;
         cout<<abs(b)<<" ";
         
     }
           
}
//tutaj nie za dobrze dziala 
void maxskok()
{
     for(int i = 0; i < N-1; i++) 
     maximum = abs(tablica2[0]);
     for(int i = 1; i < N-1; i++)
     if(abs(tablica2[i]) > maximums) maximums = abs(tablica2[i]);
     cout <<"Maksymalna wartosc talbicy : "<<maximums<<endl;

}


int main()
{
    wartosci();
    max();
    wyswietlanie();
    skok();
    maxskok();
    
    
    
    
    



    
    
    system("pause");
    return 0;
}
0

Posortuj ją sobie. Będzie szybciej.

0

Ale nie wrócę wtedy do miejsca gdzie ten skok największy jest.

0

porównuj wartość elementu, ale zapamiętuj jego indeks

1 użytkowników online, w tym zalogowanych: 0, gości: 1