Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    chiarimento su le istruzioni di un if

    salve a tutti volevo un chiarimento su questo semplice metodo:
    Se il secondo if è verificato le due istruzioni (p-- e p++) vengono eseguite entrambe? oppure soltanto la prima(p--)?se invece il secondo if non è verificato viene eseguita solo la seconda istruzione(p++)?

    codice:
    public static int esercizio1(int[] a, int c) {
     if(a.length % 2 != 0) 
    return a.length; 
    int p = 0; 
    int l = a.length/2; 
    for (int i = 0; i < l; i++) 
    if (( a[i] % a[i + l] == 0 ) || ( a[i + l] % a[i] == 0 )) { 
    if (a[i] + a[i + l] < c ) 
    p--; 
    p++; 
    }
     return p; 
    }
    grazie in anticipo!!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    non ti resterebbe che provare e vedere che succede (facendoti stampare a video i vari valori che ottieni.

    In ogni caso al verificarsi di questo if
    codice:
    if (a[i] + a[i + l] < c ) 
    p--;
    prima diminuisci p e poi in ogni caso aumenti p.

    Un consiglio, crea un unico punto di uscita e metti SEMPRE le parentesi per if e cicli e dai nomi significativi alle variabili, aumenti la leggibilità del tuo codice

    codice:
    public static int esercizio1(int[] input, int c) {
       int ret = 0; 
       if(input.length % 2 != 0) {
               ret = input.length; 
       }else{
         int p = 0; 
         int lungh = input.length 
         for (int index = 0; index < lungh; index++) {
              if (( input[index] % input[index + lungh] == 0 ) || ( input[index + lungh] % input[index] == 0 )) { 
                if (input[index] + input[index + lungh] < c ) {
                    p--;            
              }
           }
         
           p++; 
          }
         ret = p;
        }
    
     return ret; 
    }
    qui ti ho fatto un esempio, non so come vada p (nella logica dell'esercizio)
    RTFM Read That F*** Manual!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.