Programmazione per computer - Numeri
Ogni linguaggio di programmazione fornisce il supporto per la manipolazione di diversi tipi di numeri come semplici interi interi e numeri in virgola mobile. C, Java e Python classificano questi numeri in diverse categorie in base alla loro natura.
Torniamo indietro e controlliamo il capitolo sui tipi di dati, dove abbiamo elencato i principali tipi di dati relativi ai numeri -
genere | Parola chiave | Intervallo di valori che può essere rappresentato da questo tipo di dati |
---|---|---|
Numero | int | Da -32.768 a 32.767 o da -2.147.483.648 a 2.147.483.647 |
Numero piccolo | corto | Da -32.768 a 32.767 |
Numero lungo | lungo | -2.147.483.648 a 2.147.483.647 |
Numero decimale | galleggiante | Da 1.2E-38 a 3.4E + 38 fino a 6 cifre decimali |
Questi tipi di dati sono chiamati tipi di dati primitivi ed è possibile utilizzare questi tipi di dati per creare più tipi di dati, denominati tipi di dati definiti dall'utente.
Abbiamo visto varie operazioni matematiche e logiche sui numeri durante una discussione sugli operatori. Quindi sappiamo come aggiungere numeri, sottrarre numeri, dividere numeri, ecc.
Per prima cosa vediamo come stampare vari tipi di numeri disponibili nel linguaggio di programmazione C -
#include <stdio.h>
int main() {
short s;
int i;
long l;
float f;
double d;
s = 10;
i = 1000;
l = 1000000;
f = 230.47;
d = 30949.374;
printf( "s: %d\n", s);
printf( "i: %d\n", i);
printf( "l: %ld\n", l);
printf( "f: %.3f\n", f);
printf( "d: %.3f\n", d);
}
Il resto della codifica è molto ovvio, ma abbiamo usato %.3fper stampare float e double, che indica il numero di cifre dopo il decimale da stampare. Quando il programma di cui sopra viene eseguito, produce il seguente risultato:
s: 10
i: 1000
l: 1000000
f: 230.470
d: 30949.374
Operazioni matematiche sui numeri
La seguente tabella elenca vari utili matematici incorporati functions disponibile in linguaggio di programmazione C che può essere utilizzato per vari importanti calcoli matematici.
Ad esempio, se si desidera calcolare la radice quadrata di un numero, ad esempio 2304, è disponibile una funzione incorporata per calcolare la radice quadrata.
Sr.No. | Funzione e scopo |
---|---|
1 | double cos(double); Questa funzione prende un angolo (come un doppio) e restituisce il coseno. |
2 | double sin(double); Questa funzione prende un angolo (come un doppio) e restituisce il seno. |
3 | doppia abbronzatura (doppia); Questa funzione prende un angolo (come un doppio) e restituisce la tangente. |
4 | double log(double); Questa funzione accetta un numero e restituisce il logaritmo naturale di quel numero. |
5 | double pow(double, double); Il primo è un numero che desideri aumentare e il secondo è il potere a cui desideri aumentarlo. |
6 | double hypot(double, double); Se passi a questa funzione la lunghezza di due lati di un triangolo rettangolo, restituirà la lunghezza dell'ipotenusa. |
7 | double sqrt(double); Si passa a questa funzione un numero e viene restituita la sua radice quadrata. |
8 | int abs(int); Questa funzione restituisce il valore assoluto di un numero intero che le viene passato. |
9 | double fabs(double); Questa funzione restituisce il valore assoluto di qualsiasi numero decimale passato ad essa. |
10 | double floor(double); Trova il numero intero minore o uguale all'argomento che gli è stato passato. |
Di seguito è riportato un semplice esempio per mostrare alcune operazioni matematiche. Per utilizzare queste funzioni, è necessario includere il file di intestazione matematica<math.h> nel tuo programma nello stesso modo in cui hai incluso stdio.h -
#include <stdio.h>
#include <math.h>
int main() {
short s;
int i;
long l;
float f;
double d;
printf( "sin(s): %f\n", sin(10));
printf( "abs(i): %f\n", abs(1000));
printf( "floor(f): %f\n", floor(230.47));
printf( "sqrt(l): %f\n", sqrt(1000000));
printf( "pow(d, 2): %f\n", pow(2.374, 2));
}
Quando il programma di cui sopra viene eseguito, produce il seguente risultato:
sin(s): -0.544021
abs(i): -0.544021
floor(f): 230.000000
sqrt(l): 1000.000000
pow(d, 2): 5.635876
Oltre all'uso di cui sopra, userete i numeri nel conteggio dei cicli, la rappresentazione dei flag, i valori veri o falsi nella programmazione C.
Numeri in Java
Di seguito è riportato il programma equivalente scritto in Java. Java fornisce quasi tutti i tipi di dati numerici disponibili nella programmazione C.
Puoi provare ad eseguire il seguente programma per vedere l'output, che è identico al risultato generato dall'esempio C sopra.
public class DemoJava {
public static void main(String []args) {
short s;
int i;
long l;
float f;
double d;
s = 10;
i = 1000;
l = 1000000L;
f = 230.47f;
d = 30949.374;
System.out.format( "s: %d\n", s);
System.out.format( "i: %d\n", i);
System.out.format( "l: %d\n", l);
System.out.format( "f: %f\n", f);
System.out.format( "d: %f\n", d);
}
}
Quando il programma di cui sopra viene eseguito, produce il seguente risultato:
s: 10
i: 1000
l: 1000000
f: 230.470001
d: 30949.374000
Java fornisce anche una gamma completa di funzioni integrate per il calcolo matematico e puoi usarle allo stesso modo della programmazione C.
Numeri in Python
Python è leggermente diverso da C e Java; classifica i numeri inint, long, float e complex. Ecco alcuni esempi di numeri in Python:
int | lungo | galleggiante | complesso |
---|---|---|---|
10 | 51924361L | 0.0 | 3.14j |
100 | -0x19323L | 15.20 | 45.j |
-786 | 0122L | -21.9 | 9.322e-36j |
080 | 0xDEFABCECBDAECBFBAEl | 32,3 + e18 | .876j |
-0490 | 535633629843L | -90. | -.6545 + 0J |
-0x260 | -052318172735L | -32.54e100 | 3e + 26J |
0x69 | -4721885298529L | 70.2-E12 | 4.53e-7j |
Di seguito è riportato il programma equivalente scritto in Python:
s = 10
i = 1000
l = 1000000
f = 230.47
d = 30949.374
print "s: ", s
print "i: ", i
print "l: ", l
print "f: ", f
print "d: ", d
Quando il programma di cui sopra viene eseguito, produce il seguente risultato:
s: 10
i: 1000
l: 1000000
f: 230.47
d: 30949.374
Python fornisce anche una gamma completa di funzioni integrate per i calcoli matematici e puoi usarle nello stesso modo in cui le hai usate nella programmazione C.