- 360
- 10
- CPU
- Intel Core i5 6500 @ 3.20 GHz
- Dissipatore
- Intel di base
- Scheda Madre
- MSI H270 Gaming M3
- HDD
- SSD Crucial MX300 525 GB
- RAM
- Kingston DDR4 4x4GB
- GPU
- NVIDIA GeForce GTX 1060 6GB (Gigabyte)
- Audio
- NVIDIA High Definition Audio
- Monitor
- Asus MX239H
- PSU
- Corsair CX650M 650W 80+
- Case
- Aerocool Aero-800 gaming
- Periferiche
- 2 ventole Noctua (120 e 140)
- Net
- 100 Mb/s
- OS
- Windows 10 Pro 64-bit
Buongiorno ragazzi mi servirebbe una mano... Al suo quarto passaggio il ciclo interno fa diventare j = N-1 pari ad indice [0], ma quindi che succede alla condizione dell'if ( a[j-1] )? Non è possibile che diventi indice [-1]... e poi un'altra cosa, non riesco a capire il nesso che c'è tra i e j... quando il ciclo interno terminerà, il ciclo esterno aumenterà i a indice [1], ma cosa comporta questo? I numeri non sono già stati controllati tutti?
C:
#define MAX 4
int main(){
int a[MAX] = {8, 20, 9, 7};
int i, N, j, temp;
for (i=0; i < N-1; i++){
for (j = N - 1; j > i; j--){
if (a[j-1] > a[j]){
temp = a[j-1];
a[j-1] = a[j];
a[j] = temp;
}
}
}
Ultima modifica: