Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2006
    Messaggi
    59

    Esercizio

    Ciao a tutti!
    Dovrei fare questo esercizio per l'università in assembler:
    Scrivere un programma in assembler che:

    Accetti in ingresso un numero intero positivo K (K < 100000).
    Calcoli la scomposizione in fattori primi del numero e la stampi
    qualcuno mi può dare una mano????
    Perfavore.....
    Grazie mille in anticipo

  2. #2
    Proprio in assembly???
    Non è difficilissimo ma io non conosco il linguaggio!
    Mi dispiace.
    printf("Programmazione in C!");
    cout<<"Programmazione in C++!";

  3. #3
    Utente di HTML.it L'avatar di newbie
    Registrato dal
    Dec 2005
    Messaggi
    299
    Effettivamente non è difficilissimo... ma credo sia un po' lunghetto, essendo Assembly.
    Io proporrei una cosa del genere:
    • Crea un array VETT, o un file... con tutti i numeri primi da 1 a 100000, magari automaticamente... non so se esista un modo facile
    • Leggi il numero e mettilo in un registro, che so, CX (il che dovrebbe velocizzare le cose)
    • Azzera l'indice SI, in modo che punti all'inizio dell'array
    • Ciclo:
    • Metti il numero in AX e dividilo per VETT[SI] con la DIV
    • Se il resto è zero, hai trovato un fattore: stampalo (SENZA incrementare SI, il numero potrebbe essere, che ne so, 12 = 2 * 2 * 3) e metti il quoziente in CX (rappresenta il numero senza il fattore trovato)
    • Altrimenti incrementa SI
    • Fine ciclo se CX == 1 oppure se il SI è arrivato a fine vettore

    Almeno spero...
    Svegliati, Neo. Matrix ti possiede...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.