Oggi illustro le funzioni ricorsive per eseguire le somme, divisioni e potenze successive, spiegate in modo iterativo su https://www.thecsea.it/tutorial/2010/07/operazioni-successive-moltiplicazione-divisione-e-potenza/ Vediamo prima la più semplice e cioè la moltiplicazione: Il suo funzionamento è abbastanza semplice : ogni volta ritorno a+ il valore a*(b-1). Naturalmente non può essere usata con numeri negativi. […]
c
Oggi vediamo come fare le semplici operazioni di addizione e sottrazione, in modo iterativo. Vediamo prima la più semplice e cioè la moltiplicazione: 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 […]
operazioni successive : moltiplicazione, divisione e potenza(intera)
Oggi vediamo come creare strtoupper e strtolower, cioè le due funzioni che convertono rispettivamente tutto in maiusco e in minuscolo. Vediamo i codici: In pratica controllo carattere per carattere se sono maiuscoli o minuscoli e li converto di conseguenza, con ad esempio str[i]-‘a’+’A’. Per i più esperti propongo una versione […]
strtoupper e strtolower in c
A chi non è mai capitato di voler acquisire una stringa con degli spazzi ed dover utilizzare quindi gets, ma compilando con gcc il suo utilizzo viene segnalato con un errore di warning in quanto viene considerata un’espressione pericolosa? Oggi vediamo due possibili soluzioni: 1°: 2°: Allora in tutte e […]
Sostituto di gets(char *str) del c (versione con while e ...
Vediamo oggi come crea una funzione strpos, ovvero una funzione che data una strina restituisce la posizione della sua prima occorrenza nell’altra stringa, se non è presente restituisce -1. In php questa funzione è già presente nelle funzioni standard, solo che invece di ritornare -1 ritorna il valore bollano false […]
strpos (posizione di una stringa dentro un’altra stringa) in c
Oggi vediamo come calcolare in modo ricorsivo il masismo di un vettore. Il codice che useremo è il seguente: In pratica nel main prelevo i dati in input e poi richiamo la funzione max passandogli come parametro il vettore ed il numero di elementi. La funzione max per prima cosa, […]
calcolo del massimo di un vettore in modo ricorsivo
Vediamo oggi gli svantaggi dell’uso delle funzioni ricorsive, con un tipico esempio di funzione ricorsiva : la successione di Fibonacci. Per chi non si ricordasse che cosa è la successione di Fibonacci : è una successione che ha come primi due numeri 0 ed 1 e poi gli altri si […]
perché non usare le funzioni ricorsive? (esempio fibonacci)
Vediamo oggi due algoritmi per il calcolo dei numeri primi e vediamo come usando un pò più di ram si riesce ad ottimizzare di un bel po’ il programma. Un modo semplice per il calcolo dei numeri primi di un numero è utilizzare una funzione che ogni volta controlla se […]
calcolo dei numeri primi in c
Abbiamo testato un semplice ciclo in diversi linguaggi(interpretati e compilati), senza considerare le velocità di compilazione i tempi(sotto linux) sono stati i seguenti: php : 0.344 php usando gli oggetti : 0.372 c : 0.120 c++ : 0.340 java : 1.968 python : 0.744 perl : 0.288 mentre le velocità […]
velocità linguaggi
Vediamo oggi come creare una semplice chat da terminale. ATTENZIONE : il programma è progettato per linux o altri sistemi POSIX in pratica il programma consiste in una semplice copia del testo in input in un altro terminale con varie formattazioni(come ad esempio l’inseriemtno del nome al testo della chat). […]