operazioni successive : moltiplicazione, divisione e potenza(intera) 2


Oggi vediamo come fare le semplici operazioni di addizione e sottrazione, in modo iterativo.

Vediamo prima la più semplice e cioè la moltiplicazione:

#include<stdio.h>
int main(){
	
	//dichiarazioni
	
	int i,num1,num2,tot=0;
	
	
	//acquisizione dati
	
	printf("inserire il primo numero : ");
	scanf("%d",&num1);
	printf("inserire il secondo numero : ");
	scanf("%d",&num2);
		
	//calcoli
	
	for(i=1;i<=num2;i++){
		tot += num1;
	}
	
	
	//visualizzazione risultati
	
	printf("%d * %d = %d con solo operazioni di addizione\n",num1,num2,tot);
}

Il codice è molto semplice: non faccio altro che acquisire i dati ed sommare num2 volte num1 ad tot, inizializzato precedentemente a 0. Naturalmente non può essere usata con numeri negativi.

Invece ora vediamo la divisione:

#include<stdio.h>
int main(){
	
	//dichiarazioni
	
	int i,num1,num2,quoz,resto;
	
	
	//acquisizione dati
	
	printf("inserire il primo numero : ");
	scanf("%d",&num1);
	printf("inserire il secondo numero : ");
	scanf("%d",&num2);
		
	//calcoli
		
	for(i=num2,quoz=0;i<=num1;i+=num2,quoz++)
		;
	
	resto = num1-(i-num2);
	
	//visualizzazione risultati
	
	printf("%d/%d :\nquoziente = %d\nresto = %d\n",num1,num2,quoz,resto);
}

Qui invece continuo a sommare a i num2, incrementando anche quoz, fin quando i non è > di num1, in questo modo quz mi indica il quoziente intero, mentre per il resto basta invece vedere la differenza tra num1 ed il numero multiplo di num2 precedente, che si può ottenere o con num2*quoz o con i-num2. Naturalmente non può essere usata con numeri negativi.

Infine vediamo il calcolo di potenze intere:

#include<stdio.h>
int main(){
	
	//dichiarazioni
	
	int i,num1,num2,tot=1;
	
	
	//acquisizione dati
	
	printf("inserire il primo numero : ");
	scanf("%d",&num1);
	printf("inserire il secondo numero : ");
	scanf("%d",&num2);
		
	//calcoli
		
	for(i=1;i<=num2;i++){
		tot *= num1;
	}
	
	
	//visualizzazione risultati
	
	printf("%d^%d = %d con moltiplicazioni successive\n",num1,num2,tot);
}

In pratica non faccio altro che moltiplicare num1 per il risultato precedente num2 volte, il risultato precedente è contenuto in tot, che è inizializzato a 1. Naturalmente non può essere usata con numeri negativi.

CC BY-SA 4.0 operazioni successive : moltiplicazione, divisione e potenza(intera) by cardinale claudio is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.


Lascia un commento

2 commenti su “operazioni successive : moltiplicazione, divisione e potenza(intera)