TPSIT: campo induzione magnetica di un solenoide

Si è visto che le linee di forza di un campo elettrico vanno dalle cariche positive a quelle negative o magari, in alcuni casi, vengono da oppure vanno verso l'infinito.

Le linee di forza di un campo magnetico sono linee chiuse, concatenate con la corrente. La ragione di ciò è che il campo magnetico non è originato da poli magnetici. Questo tipo di campo, che non ha sorgenti puntiformi, si dice solenoide.

Il campo induzione magnetica al centro risulta:

B=\cfrac{\mu _{0}IN}{L}

con N numero di spire o avvolgimenti, L lunghezza del solenoide.

Pubblicato in Senza categoria | Lascia un commento

TPSIT: campo induzione magnetica di una corrente rettilinea, forze tra correnti

Il campo induzione magnetica di un conduttore rettilineo infintamente lungo percorso da corrente è inversamente proporzionale alla distanza R e le linee di forza sono cerchi concentrici con la corrente e perpendicolari ad essa.

Tale relazione è chiamata formula di Biot Savart.

\vec{B}=\cfrac{\mu _{0}I}{2\pi R}\vec{u}_{\theta }

Componendo la formula precedente e la formula di Lorentz ho:

\vec{F}=-\vec{u}_{R}\cfrac{\mu _{0}II^{'}}{2\pi R}L^{'}

Due correnti parallele nello stesso verso si attraggono l'una all'altra con eguali forze.

Due  correnti parallele con versi opposti si respingono.

Pubblicato in Senza categoria | Lascia un commento

GPOI: esercizi sui costi, ricavi e profitti

  1. alexander averin

    Date le funzioni di coso totale: C=10q^{2}+9000 e C=q^{2}+800q+360000,

    1. trova la funzione del costo marginale e rappresenta graficamente
    2. confronta il grafico con quello della funzione del costo medio
  2. Data la funzione del costo medio: C^{me}=\cfrac{1}{2}q+100 determina la funzione del costo marginale e del costo totale.
  3. Sia C=5000+25q+0,15q^{2} la funzione del costo totale e sia q=2400-4p la domanda del bene espressa in funzione del suo prezzo di vendita. Determinare:
    1. la funzione del profitto
    2. entro quali limiti può variare la quantità q di merce per avere un guadagno
    3. per quale valore della quantità q il profitto è massimo
  4. Un'impresa, che opera in regime di monopolio, programma la sua produzione settimanale in base ai seguenti dati: funzione della domanda q=800-0.5p, funzione di costo totale C=600q+2q^{2}. Determinare la produzione giornaliera che dà il massimo profitto. [q=125]
  5. Un'impresa, per produrre una data macchina, sostiene i seguenti costi:
    1. costi fissi settimanali pari a 40.000€
    2. costi variabili pari allo 0.0008 del quadrato delle unità prodotti
    3. il prezzo di vendita in regime di concorrenza perfetta è di 40€ per unità. Determina la produzione che dà il massimo profitto settimanale. [q=10000; p=28000]

 

Pubblicato in Senza categoria | Lascia un commento

Python: creare eseguibili

alexander averin

Per distribuire le nostre applicazioni il più delle volte risulta “scomodo” dare il file .py anche perchè per poter funzionare l’utente deve aver installato python.
Se specialmente l’utente a cui dobbiamo dare a nostra applicazione usa Windows è più comodo passargli un file .exe
Per creare un eseguibile(exe) scarichiamo il modulo py2exe.
una volta installato apriamo il programma che dobbiamo convertire in eseguibileed all’inizio del file aggiungiamo queste righe:

from distutils.core import setup
import py2exe
setup(console=[‘NomeFile.py’])

salviamo il nostro file con il nome setup.py e dal terminale(per utenti unix) o da cmd.exe(per utenti Windows) ci portiamo nella directory dove si trova il nostro file e scriviamo:

python setup.py py2exe

compariranno un po di scritte ed alla fine se abbiamo fatto tutto correttamente dentro la directory del nostro file dovremmo avere due cartelle build e dist ,il nostro eseguibile si troverà all’interno della cartella dist.
Per testare il funzionamento dell’eseguibile appena creato sempre da terminale ci portiamo dentro la cartella dist e digitiamo:

NomeEseguibile.exe

Pubblicato in Senza categoria | Lascia un commento

HTML: il primo programma

alexander averin

HTML è di gran lunga il linguaggio più utilizzato per la creazione delle pagine in rete.

Il codice scritto in HTML deve trovarsi in un file con estensione .htm o .html per mandarlo in esecuzione, basta indicare il nome del file, insieme al percorso su disco, nella finestra delle URL del browser.

Ecco il primo programma

<html><head>
</head><body><h1>
<br>
<br>
<br>
<center>
Buongiorno amici!
</center>
</h1>

</body></html>

salvare il file con estensione .htm.

Per prima cosa si è dichiarato che si sta scrivendo in html

<HTML>

Si sta inserendo del materiale che deve risultare nella testata di pagina, cioè nello heading un concetto che si vedrà più avanti: per ora ci basti dire che è una sorta di etichetta che indica un comando, detto tag:

<HEAD>

vogliamo poi che la scritta sia di formato grande: il tag <H> permette di impostare 6 diversi formati, da H1 ad H6 di dimensione decrescente.

<BR> significa andare a capo

<CENTER> significa centrare il testo

Fatto ciò, ci si deve ricordare di chiudere, in ordine inverso, cioè partendo dall'ultimo tag aperto, tutti i tag che hanno la necessità di una controparte; nel nostro caso tutti meno che <BR>

</CENTER>

</HEAD>

</HTML>

Commenti

<!-- e --> permette di inserire dei commenti.

Pubblicato in Senza categoria | Lascia un commento

HTML: Web editor

romero britto

romero britto

I programmi di web editor si suddividono in due categorie:

  • web editor non visuali: facilitano la scrittura del codice che però non viene generato automaticamente. Per esempio colorano alcuni termini specifici in maniera differente rispetto al resto del testo, completano automaticamente il codice oppure segnalano gli errori di sintassi.
  • web editor visuali: generano automaticamente il codice html utilizzando un'interfaccia visuale. Questi programmi vengono indicati con l'acronimo WYSIWYG (What you See Is What You Get) per indicare ceh in ogni istante viene visualizzato l'aspetto finale del sito.

Editor testuali:

Notepad++

Compatibile con Windows, completamente gratuito, supporta diverse lingue ed ha un'interfaccia grafica molto intuitiva. Supporta numerosi linguaggi tra cui: HTML, PHP, ASP, SQL, Java, Javascript.

PSPad

Supporta diverse lingue tra cui l'italiano, è gratuito e compatibile con Windows. Caratteristiche principali: client ftp per modificare i file in remoto, gestione di progetti, editor esadecimale completo, la libreria tidy integrata consente di formattare e verificare il codice HTML e di convertirlo in XHTML, XML e CSS, correzione automatica, modifica di file di testo di qualsiasi dimensione e comprende un registratore di macro.

UltraEdit

Si tratta di un editor HTML avanzato, sul sito è disponibile una versione di prova, supporta Windows 64 bit, supporta diverse lingue, è disponibile una versione Linux ed è in sviluppo una versione per Mac. Caratteristiche principali: editor esadecimale, supporta altri linguaggi (PHP, Perl, Java e Javascript), syntax highlighting, supporto unicode, client ftp per modificare file in remoto, toolbar con funzioni HTML preconfigurate, dispone di template e lista di funzioni ad albero con parametri, variabili e proprietà.

Editor Vsuali

Nvu (versione 1.0). Completamente gratuito, compatibile con Windows, è un editor WYSIWYG ideale anche per chi non conosce il linguaggio HTML. Supporta XML, Javascript e CSS, è disponibile in italiano, è dotato di un'interfaccia gradevole e contiene tutte le funzioni dei principali concorrenti (che però necessitano di licenza). E' possibile scaricare il codice sorgente poichè l'editor è open source e si possono apportare tutte le modifiche desiderate.

Adobe Dreamweaver CS5. E' compatibile sia con Windows che con Mac, editor che supporta più linguaggi tra cui (HTML, XHTML, CSS, PHP, Ajax, XML, Javascript, Coldfusion, ASP). Caratteristiche principali: supporto CMS integrato, ispezione CSS, suggerimenti su codice PHP, supporto per Subversion, suggerimenti sul codice per siti specifici, pagine di avvio CSS, semplice configurazione dei siti, integrazione con Adobe BrowserLab, compatibilità con più browser e utilizzo dei più noti framework CSS. Sul sito è possibile scaricare una versione di prova oppure si può comprare una licenza per circa 574 euro.

Blue Voda Website Builder (versione 11.4g). Vanta più di 3,5 milioni di download, è completamente free ed compatibile con Windows. Veramente semplice da usare, si possono creare siti funzionali anche se non si conosce l'HTML, al suo interno sono presenti alcuni template già fatti, è presente una funzione che consente di mettere online il proprio sito senza aver alcun programma ftp. Anche un bambino potrebbe riuscire a costruire il proprio sito con questo editor, sul sito del produttore inoltre si trovano videotutorial e molti templates.

 

Pubblicato in Senza categoria | Lascia un commento

HTML: introduzione

romero britto

La tecnologia software mette a disposizione gli strumenti per realizzare con facilità pagine in formato Web, ossia pronte per essere caricate su un server internet e visualizzabili con un browser dagli utenti che si collegano; molte aziende offrono la possibilità di creare il proprio sito Internet gratuitamente, fornendo lo spazio su un server e, in alcuni casi, anche gli strumenti necessari per la creazione delle pagine Web.

L'insieme delle pagine che si riferiscono a uno stesso utente, a uno stesso argomento o azienda forma un sito internet o sito Web.

Le pagine da pubblicare su Internet sono realizzate usando il lingaggio HTML (HyperText Markup Language), in modo che possano essere correttamente interpretate dal browser e visualizzate in forma grafica.

Per la costruzione di un sito, è sufficiente utilizzare un programma qualsiasi di videoscrittura.

Pubblicato in Senza categoria | Lascia un commento

C++: soluzione alla verifica

  • alexander averin

    alexander averin

    da notare l'uso delle variabili globali e locali

  • le funzioni prototipo
  • l'iterazione

#include <iostream>
using namespace std;

string prodotto;
string prodottomassimo;
const float k=100;

int maggiore(int a,int b);
float funzionecosto(float prezzo,int max);
bool probabilesconto(float costotoale);
float sconto(float costototale);

int main()
{

int n,max;
float costototale,prezzo,finale;
max=0;
cout<<"Inserimento prodotti"<<"\n";
cout<<"0 - uscita"<<"\n";
cout<<"Quantita: ";
cin>>n;
while (n!=0)
{
cout<<"Prodotto: ";
cin>>prodotto;
max=maggiore(max,n);
cout<<"Quantita: ";
cin>>n;
}
cout<<"Il prodotto maggiormente venduto risulta: "<<prodottomassimo<<" con "<<max<<" pezzi"<<"\n";
cout<<"Prezzo del prodotto: ";
cin>>prezzo;
costototale=funzionecosto(prezzo,max);
cout<<"Spesa complessiva: "<<costototale<<"\n";
if (probabilesconto(costototale))
finale=sconto(costototale);
else
finale=costototale;

cout<<"Il prezzo finale del "<<prodottomassimo<<" risulta: "<<finale;

return 0;
}

int maggiore(int a,int b)
{
int maxmaggiore;

if (b>a)
{
maxmaggiore=b;
prodottomassimo=prodotto;
return maxmaggiore;
}
else
{
return a;
}

}

float funzionecosto(float prezzo,int max)
{
return prezzo*max;
}

bool probabilesconto(float costototale)
{
if (costototale > k)
return true;
else return false;

}

float sconto(float costototale)
{
return (costototale - costototale*20/100);
}

Pubblicato in Senza categoria | Lascia un commento

Esercizi sugi array

  1. alexander averin

    Leggere un array di 10 elementi tramite funzione prototipo

  2. Leggere e scrivere un array di 10 elementi tramite funzione prototipo
  3. dopo aver caricato in memoria un array di numeri interi con 10 componenti, calcolarne il prodotto delle componenti
  4. dopo aver caricato in memoria un array di numeri interi con 10 componenti, contare le componenti che hanno un valore superiore a 5
  5. dopo aver caricato in memoria un array di numeri interi con 10 componenti raddoppiare il valore solo delle prime tre componenti.
  6. Genera casualmente 10 numeri, memorizzali in un array ed effettua lo scambio tra il massimo ed il minimo elemento (supponendo che i valori dell'array siano tutti distinti tra loro).
  7. Leggi 10 numeri interi da tastiera e visualizzali in sequenza senza stampare uno stesso numero due volte. Per esempio: valori dell'array: 15,3,5,3,11,5,15,5,15,11; valori stampati: 15,3,5,11.
  8. Leggi N numeri e visualizzali a rovescio.
  9. Genera casualmente N numeri, scegli causalmente un elemento del vettore, e quindi effettua la partizione dell'array rispetto a quell'elemento (cioè elabora il vettore in modo tale che tutti gli elementi  a sinistra dell'elemento scelto siano minori o, al limite, uguali, mentre tutti gli elementi a destra siano sempre maggiori).
  10. dato un vettore di n interi, costruisci altri due vettori di dimensioni opportune, contenenti rispettivamente gli elementi del primo vettore non maggiori e maggiori di un intero dato.
  11. leggi n numeri, inseriscili in un vettore e individua gli elementi duplicativi visualizzandoli sullo schermo.
Pubblicato in Senza categoria | Lascia un commento

C++: array o vettore

Alexander Averin

L'array è un insieme di elementi omogenei fra loro. Con una variabile possiamo indicare solo un dato, con l'array possiamo indicare tanti dati dello stesso tipo con un solo nome collettivo di variabile: l'identificatore dell'array. Gli elementi si distinguono uno dall'altro attraverso l'indice che viene assegnato nell'array, e che viene posto accanto all'identificatore dell'array.

Un array si definisce con la seguente dichiarazione:

tipo NomeArray[dimensione];

Alla normale dichiarazione di variabile si aggiunge semplicemente, tra parentesi quadre, il numero di elementi (dimensione) che compongono l'array.

Per esempio, la seguente dichiarazione crea un array di 10 elementi di tipo double:

double coeff[10];

L'indice è solitamente una variabile di tipo int.

Si può usare l'istruzione di asegnazione:

coeff[7]=7;

oppure produrre in output i valori delle componenti di un array con un ciclo for:

for (int i=0; i<10; i++){

cout<<coeff[i]<<endl;

}

La numerazione degli indici del linguaggio in C++ inizia da 0 e quindi, nel nostro esempio, gli elementi dell'array sono coeff[0], coeff[1], ...,coeff[9].

E' possibile inizializzare un array assegnando i valori alle componenti in fase di dichiarazione, come in questo esempio:

double numeri[3]={2.5,1.2,3.0}

I valori indicati all'interno delle parentesi graffe e separati dalla virgola.

Per passare un vettore ad una funzione è sufficiente indicare il nome del vettore ad esempio il seguente esempio legge un vettore e lo restituisce alla main, poi chiamo una funzione che lo stampa a video:

#include <iostream>
using namespace std;
const int MAX=100;
void ReadVector(int v[],int d);
void WriteVector(int v[],int d);

main(){
int d;
int v[MAX];

cout<<"Inserisci la dimensione del vettore: ";
cin>>d;
ReadVector(v,d);
WriteVector(v,d);
return 0;

}

Void ReadVector(int v[],int d)
{
for (int i=0;i<d;i++)
{
cout<<"Elemento di posto "<<i<<": ";
cin>>v[i];
}

}

void WriteVector(int v[],int d)
{
for (int i=0;i<d;i++)
{
cout<<v[i]<<endl;
}
}

 

Pubblicato in Senza categoria | Lascia un commento