Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla
Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla
Una ammiraglia elettrica, da sei o sette posti, con il comfort di viaggio come missione assoluta. Un'auto non per tutti, ma di cui ti innamori dopo pochi giorni, ecco com'è andata la nostra prova di lunga durata
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode
Hyper Mini LED con 2.304 zone, DisplayPort 2.1 e Dual Mode: 5K a 165 Hz oppure QHD a 330 Hz: LG propone un monitor da gioco ma dalla buona versatilità creativa, con prestazioni interessanti e un listino di 1.220 euro. Peccato l'alimentatore ingombrante
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio
Motorola edge 70 Fusion FIFA World Cup 26 Edition porta la maglia iridata su uno smartphone accessibile: display Extreme AMOLED da 6,78 pollici a 144Hz, fotocamera Sony LYTIA 710 con moto ai, Snapdragon 7s Gen 3 abbinato a 8GB di RAM, batteria da 5200 mAh con ricarica TurboPower a 68W e certificazione IP68/IP69, il tutto in una veste PANTONE Silhouette con logo dorato a 24 carati, moto buds bass incluse in confezione e contenuti software dedicati ai Mondiali 2026
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 25-02-2007, 09:41   #1
frizzo28
Senior Member
 
Iscritto dal: Aug 2005
Città: Roma sud
Messaggi: 590
[c] Piano cartesiano e distriduzione normale

Ciao a tutti dovrei realizzare il seguente programma:
"Realizzare un programma che dato in input media e varianza sia in grado di disegnare sul piano cartesiano il grafico di una distribuzione normale";
x calcolare la normale ho scritto la formula e funziona ora il problema è come faccio a fare il grafico dato che il risultato della funzione è sempre un numero tio 0.00457?

il grafico dovrebbe essere tipo l'immagine allegata:



P.S. Come compilatore uso turbo c++ della borland
grazie
ciao
Immagini allegate
File Type: gif gaussstandard.gif (1.7 KB, 17 visite)
__________________
-Mac Book intel core duo 1,83GHz, 1,25 Gb RAM
-Amd athlon 64 dual core 4400+, 2 GB RAM, Asus a8n-sli Deluxe, totale 500 GB di HARD DISK(4 hdd)
frizzo28 è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2007, 10:14   #2
AYAMY
Senior Member
 
L'Avatar di AYAMY
 
Iscritto dal: Dec 2003
Messaggi: 704
Ciao frizzo.. scusa se ti disturbo.. volevo sapere se potevi postare il codice relativo alla distribuzione normale...
Anche io sto lavorando con le gaussiane... (in particolare sto creando un vettore di valori che graficati dovrebbero generare una gaussiana)....
Grazie ancora!!!
Mi spiace non poterti aiutare nello specifico.. ma forse per graficare ti dovresti appoggiare a delle librerie esterne...
ciao e grazie ancora!!
AYAMY è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2007, 11:58   #3
frizzo28
Senior Member
 
Iscritto dal: Aug 2005
Città: Roma sud
Messaggi: 590
Quote:
Originariamente inviato da AYAMY Guarda i messaggi
Ciao frizzo.. scusa se ti disturbo.. volevo sapere se potevi postare il codice relativo alla distribuzione normale...
Anche io sto lavorando con le gaussiane... (in particolare sto creando un vettore di valori che graficati dovrebbero generare una gaussiana)....
Grazie ancora!!!
Mi spiace non poterti aiutare nello specifico.. ma forse per graficare ti dovresti appoggiare a delle librerie esterne...
ciao e grazie ancora!!

Questo è il codice non sono sicurissimo che sia giusto a me pare funzioni...
il problema è per la grafica
Codice:
#include<conio.h>
#include<iostream.h>
#include<graphics.h>
#include<math.h>

double normale(int x,int m,int var);

void main()

{

double ris,max=0.0;
int x,m,var;
clrscr();
//Dati programma

m=7;
var=12;
//Fine Dati programma

ris=normale(x,m,var);

cout<<ris;
getch();

}



double normale(int x,int m,int var)
{
double e=2.71828;
double sca,appo,p;
sca= sqrt(var);
appo=-(pow(x-m,2)/(2*var));
p=(1/(sca*sqrt(2*M_PI)))*pow(e,appo);
return p;
}
__________________
-Mac Book intel core duo 1,83GHz, 1,25 Gb RAM
-Amd athlon 64 dual core 4400+, 2 GB RAM, Asus a8n-sli Deluxe, totale 500 GB di HARD DISK(4 hdd)
frizzo28 è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2007, 16:29   #4
repne scasb
Bannato
 
Iscritto dal: Feb 2003
Messaggi: 947
A meno di errori grossolani:

Codice:
#include <stdio.h>
#include <math.h>
#include <conio.h>

#define SCREEN_X 79
#define SCREEN_Y 19
#define PI 3.14159265359

void main(void)

{
    char table_g[SCREEN_X][SCREEN_Y];
    float min_x,max_x,step_x,s,m,a=4.,b=1.;
    int i,j,c;

    printf("Varianza: ");
    scanf("%f",&s);

    printf("Media: ");
    scanf("%f",&m);

    do
    {
        for(i=0;i<SCREEN_X;i++)
        {
	    for(j=0;j<SCREEN_Y;j++)
	        table_g[i][j]=' ';
        }

        min_x=m-a*s;
        max_x=m+a*s;
        step_x=(max_x-min_x)/(SCREEN_X-1);

        for(i=0;i<SCREEN_X;i++)
        {
/*	    j=1./(sqrt(2*PI*s))*exp(-pow(min_x+i*step_x-m,2)/(2*s))*SCREEN_Y;*/
	    j=exp(-pow(min_x+i*step_x-m,2)/(2*s))*SCREEN_Y*b;
	    if(j<SCREEN_Y)
	        table_g[i][j]='*';
        }
    
        for(i=0;i<SCREEN_X;i++)
	    printf("-");

        printf("\nVarianza: %.2f\nMedia: %.2f\nRange: %.2f/%.2f\n",s,m,min_x,max_x);
    
        for(i=0;i<SCREEN_X;i++)
	    printf("-");

        for(j=SCREEN_Y-1;j>=0;j--)
        {
	    printf("\n");
	    for(i=0;i<SCREEN_X;i++)
	        printf("%c",table_g[i][j]);
        }

        printf("\n-[ESC=Exit][+=Zoom in][-=Zoom out]");
        for(i=0;i<SCREEN_X-34;i++)
	    printf("-");
	c=getch();
	if(c=='+')
	{
	    a/=1.1;
	    b*=1.1;
	}
	if(c=='-')
	{
	    a*=1.1;
	    b/=1.1;
	}
    } while (c!=0x1B);
}

Ultima modifica di repne scasb : 25-02-2007 alle 22:05.
repne scasb è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2007, 09:07   #5
frizzo28
Senior Member
 
Iscritto dal: Aug 2005
Città: Roma sud
Messaggi: 590
Quote:
Originariamente inviato da repne scasb Guarda i messaggi
A meno di errori grossolani:

Codice:
#include <stdio.h>
#include <math.h>
#include <conio.h>

#define SCREEN_X 79
#define SCREEN_Y 19
#define PI 3.14159265359

void main(void)

{
    char table_g[SCREEN_X][SCREEN_Y];
    float min_x,max_x,step_x,s,m,a=4.,b=1.;
    int i,j,c;

    printf("Varianza: ");
    scanf("%f",&s);

    printf("Media: ");
    scanf("%f",&m);

    do
    {
        for(i=0;i<SCREEN_X;i++)
        {
	    for(j=0;j<SCREEN_Y;j++)
	        table_g[i][j]=' ';
        }

        min_x=m-a*s;
        max_x=m+a*s;
        step_x=(max_x-min_x)/(SCREEN_X-1);

        for(i=0;i<SCREEN_X;i++)
        {
/*	    j=1./(sqrt(2*PI*s))*exp(-pow(min_x+i*step_x-m,2)/(2*s))*SCREEN_Y;*/
	    j=exp(-pow(min_x+i*step_x-m,2)/(2*s))*SCREEN_Y*b;
	    if(j<SCREEN_Y)
	        table_g[i][j]='*';
        }
    
        for(i=0;i<SCREEN_X;i++)
	    printf("-");

        printf("\nVarianza: %.2f\nMedia: %.2f\nRange: %.2f/%.2f\n",s,m,min_x,max_x);
    
        for(i=0;i<SCREEN_X;i++)
	    printf("-");

        for(j=SCREEN_Y-1;j>=0;j--)
        {
	    printf("\n");
	    for(i=0;i<SCREEN_X;i++)
	        printf("%c",table_g[i][j]);
        }

        printf("\n-[ESC=Exit][+=Zoom in][-=Zoom out]");
        for(i=0;i<SCREEN_X-34;i++)
	    printf("-");
	c=getch();
	if(c=='+')
	{
	    a/=1.1;
	    b*=1.1;
	}
	if(c=='-')
	{
	    a*=1.1;
	    b/=1.1;
	}
    } while (c!=0x1B);
}

Ti ringrazio molto funziona solo che all'umentare della varianza la curva dovrebbe oltre che allargarsi anche appittirsi come altezza...
e al diminuire della varianza dorebbe alzarsi e scringersi invecie si abbassa....
come si potrebbe risolvere?
grazie ciao
__________________
-Mac Book intel core duo 1,83GHz, 1,25 Gb RAM
-Amd athlon 64 dual core 4400+, 2 GB RAM, Asus a8n-sli Deluxe, totale 500 GB di HARD DISK(4 hdd)
frizzo28 è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2007, 09:48   #6
reptile9985
Senior Member
 
L'Avatar di reptile9985
 
Iscritto dal: Jul 2004
Messaggi: 1685
Quote:
Originariamente inviato da frizzo28 Guarda i messaggi
Ciao a tutti dovrei realizzare il seguente programma:
"Realizzare un programma che dato in input media e varianza sia in grado di disegnare sul piano cartesiano il grafico di una distribuzione normale";
x calcolare la normale ho scritto la formula e funziona ora il problema è come faccio a fare il grafico dato che il risultato della funzione è sempre un numero tio 0.00457?
la funzione di densità di una normale è la seguente come saprai benissimo

dove mu è la media e sigma^2 la varianza... per ottenere un grafico devi sostituire alla x valori numerici tra -infinito e +infinito... in generale dato che la distribuzione è compresa per il 99.8% tra mu-3sigma e mu+3sigma non dovrebbero interessare valori esterni... e dato che è simmetrica fa' i calcoli solo tra mu e mu+3sigma e poi "rifletti"
ciao!
reptile9985 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla Hyundai Ioniq 9: dopo due settimane di test non ...
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e...
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio Motorola edge 70 Fusion FIFA World Cup 26 Editio...
Renault 5 elettrica al giudizio definitivo: solo stupore iniziale o premi meritati? Renault 5 elettrica al giudizio definitivo: solo...
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix HONOR CHOICE Projector Air Pro: piccolo, portati...
Claude Code non ti chiederà pi&ug...
TSMC supera le proteste dei proprietari ...
Amazon, la centrale a gas per il nuovo d...
Uno studio mette in discussione i cifrar...
Sony potrebbe rilanciare le WH-1000XM4 d...
Meta rilascia Muse Glimmer: modello loca...
Meta costruisce il proprio indice Web pe...
X cancella il programma di revenue shari...
Gli store alternativi sono scaricabili d...
Framework: rubati nomi, indirizzi e tele...
DJI Osmo Nano a 313,50€: la mini camera ...
Christopher Nolan non ha dubbi: lo strea...
JBL Live 670 NC a 59,99€: cuffie on-ear ...
Il ranch argentino da 32.000 ettari cost...
BMW Luminetta, l'auto solare che produce...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 15:54.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v