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

    aiuto velocità del prog

    salve... dovevo fare un prog in C++ che calcolasse questo inegrale:



    e ho scritto questa funzione

    float integrale (double i) {
    double c;
    c=pow (M_E, -i*i/2)*0.1;
    return c;
    }

    e nel main(){
    ..
    for (i=0; i<N; i+0.1) {
    somma+=integrale(i);
    }
    cout << "\n\n Il valore dell'integrale e': " << (1/sqrt(2*M_PI))*somma+0.5;
    ..
    }
    il problema è la velocità: infatti visti gli innumerevoli calcoli il prog nn conclude in tempi accessibile il calcolo finale..

    lasciando perdere il main che mi sembra sia apposto, conoscete qualche tecnica x limitare i calcoli e rendere il prg + veloce

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    311
    codice:
    for (i=0; i<N; i+0.1)
    non so se hai sbagliato a ricopiare, comunque dovrebbe essere
    codice:
    for (i=0; i<N; i+=0.1)

  3. #3
    nn credo.. quelle i sn i pezettini di base dell'integrale x calcolare l'area

  4. #4
    Utente di HTML.it L'avatar di Xadoom
    Registrato dal
    Dec 2002
    Messaggi
    1,491
    Si ma se non metti += non 'memorizzi' il nuovo valore di i ed il ciclo non ha MAI fine (i vale sempre lo stesso).
    Ciao
    Windows Xp
    [Java]
    [PHP]Notepad++
    [Fortran90-77] elf90 g77
    [C++ /WinAPI] DevC++ VisualC++

  5. #5
    Utente di HTML.it L'avatar di pdpmpd
    Registrato dal
    Jan 2003
    Messaggi
    448
    loop infinito loop infinito loop infinito loop infinito loop infinito loop infinito loop infinito loop infinito loop infinito loop infinito
    Drug misuse is not a disease, it is a decision, like the decision to step out in front of a moving car. [...] In this particular life-style the motto is "be happy now because tomorrow you are dying", but the dying begins almost at once, and the happiness is a memory.

  6. #6
    azz.. avete ragione.. io è poko che programmo e nn ho ancora fatto prog complessi quindi avevo usato solo i++.. nn sapevo che si dovesse mettere += merci

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.