ESERCIZI SUI DIAGRAMMI A BLOCCHI 1) Dati 4 numeri interi in input N1, N2, D1, D2, ( con D1 e D2 diversi da 0) semplificare il prodotto delle seguenti frazioni: N1/D1 E N2/D2. 2)Dato una sequenza di numeri interi terminante quando in input ho due numeri consecutivi pari stampare la posizione del massimo dei numeri interi dispari incontrati. 3)Dati in input due numeri interi N1, N2 tale che N1<N2 stampare tutti i multipli di N1 e tutti i divisori di N2 compresi nell'intervallo [N1,N2]. 5)Dato una sequenza di numeri interi terminante quando in input ho due numeri consecutivi entrambi divisibili per 3 e per 4 stampare la posizione del massimo dei numeri interi pari incontrati. 7)Dati due numeri A e B dire quanti numeri primi ci sono nell'intervallo [A,B]. Fare la tavola di traccia con A=4 e B=11. 8)Data una sequenza di numeri naturali in input terminata quando due numeri consecutivi differiscono per un multiplo di 10, stampare quanti numeri divisibili per 3 ma non per 6 ci sono stati. N.B.: considerare anche i numeri che terminano la sequenza. 9) Dato un numero naturale N dare la sua scomposizione in fattori primi. Per esempio la scomposizione in fattori primi di 360 e': 23*32*5 10) Data una sequenza di N cifre binarie (solo valori 0 o 1) stampare il numero decimale corrispondente. Per esempio data la sequenza (1101) 2 il numero decimale corrispondente e' dato da 1*20+0*21+1*22+1*23 =(13)10 13) Dato un numero N>=0 calcolare la radice quadrata di N. Se la radice quadrata non è esatta dire tra quali interi si trova. ES: la radice quadrata di 26 si trova tra 5 e 6. N.B. non si può utilizzare l’operatore di radice quadrata. 1 15) La Successione di Fibonacci e' un'applicazione nei Naturali definita cosi': f(0)=0; f(1)=1; f(n)=f(n-1)+f(n-2). Costruire un algoritmo capace di: dato un numero in input positivo e grande, riesca a stampare ordinatamente tutti i numeri della successione di Fibonacci inferiori al numero dato in input. 16) Date due coppie di numeri in input rappresentanti due frazioni (N1/D1) e (N2/D2), determinare un algoritmo che ci dia come risultato la frazione somma ridotta ai minimi termini. 17)Data una sequenza di numeri in input terminata da due numeri consecutivi successivi (es. 4 e 5); determinare un algoritmo capace di stampare la massima differenza tra due numeri consecutivi immessi e dire la loro posizione ordinale di input ed il loro valore. 18) Dati N1 e N2 stampare tutti i numeri compresi nell’intervallo chiuso [N1,N2] che hanno come fattori primi il 2 ed il 3 e dire con quali potenze. 19) Dato un numero stampare il numero primo più vicino tra quelli minori e maggiori. Se tali numeri sono equidistanti visualizzarli entrambi. 22) Dati due numeri interi positivi N1, N2 determinare e stampare se esistono numeri PERFETTI compresi tra N1 e N2. N.B. Un numero è perfetto se risulta uguale alla somma dei suoi divisori eccetto se stesso (es: 6). 24) Dato un numero intero N scrivere 1 se esso è pari 0 se esso è dispari. 25) Dati A e B scrivere prima il più piccolo e poi il più grande. 26) Sommare i primi numeri interi positivi. 27) Scrivere un algoritmo che riceve in input un numero intero positivo e ne calcola il fattoriale. 2 28) Dati due numeri interi N1, N2 stampare il resto della divisione per 10 di ogni numero compreso tra N1 e N2. 29) Dati N,M>=0 calcolare N*M per somme successive. 30) Trovare quoziente e resto di una divisione per differenze successive. 31) Sommare i primi N numeri interi positivi. 32) Scrivere i quadrati dei numeri naturali da 1 a N. 33) Dati due numeri N1, N2 da input stampare il prodotto di tutti i numeri divisibili per 3 e la somma dei numeri divisibili per 5 compresi nell’intervallo [N1, N2] 34) Data una sequenza di numeri interi interrotta quando compare uno 0 stampare il totale dei numeri maggiori di 0. 35) Dato una sequenza di numeri terminante quando appaiono consecutivamente due numeri uguali stampare la media dei numeri positivi. 36) Scrivere un algoritmo che calcola il quadrato di un numero N come la somma dei primi N numeri dispari N>=0 (ES: 22 = 4 = 1+3) 37) Scrivere un algoritmo che verifica se due numeri A e B sono primi fra loro (quando non hanno divisori in comune eccetto il numero 1) 38) Scrivere un algoritmo che dati un numero X ed un numero Y legga una sequenza di numeri finché non ne trova uno uguale ad X e conta quanti dei numeri letti sono < di Y. 39) Trovare il max dei pari ed il minimo dei dispari dei primi N numeri naturali ed il totale dei numeri pari ed il totale dei numeri dispari. 40) Dato un numero reale N determinare il valore assoluto N<>0 41) Trovare dati tre numeri A,B,C trovare il max ed il minimo 3 42) Scrivere un programma che legga una sequenza di numeri interi finché non ne trova uno uguale alla somma dei precedenti e stampa quanti numeri pari ha letto. 43) Scrivere un programma che introdotto un numero intero casuale X compreso fra 1 e 6, determini il max valore di N per il quale la somma S= 1+x+x2+........xN non superi il valore 30000 e stampi il valore di X, di S e di N 44) Si lancino due dadi, se al primo lancio viene 7 o 11 si vince, se invece viene 2, 3 o 12 si perde, se viene uno degli altri valori possibili si rilanciano i 2 dadi fino a che o viene 7, nel qual caso si perde, o viene lo stesso numero del primo lancio, nel qual caso si vince. 45) Scrivere un programma che determini i numeri naturali di 3 cifre che hanno la proprietà di essere uguali alla somma dei cubi delle loro cifre (ad esempio 371 = 27+343+1) 46) simulare il gioco del sette. Il gioco del sette consiste nell’enumerare da 1 a N saltando i numeri che contengono uno o più sette o sono multipli di sette. 47) Scrivere un programma che introdotto da tastiera un numero intero, dica se esso è divisibile per 9, per 11 o per entrambi utilizzando le note regole: a) un numero è divisibile per 9 se la somma delle sue cifre è divisibile per 9; b) un numero è divisibile per 11 se la differenza fra la somma delle cifre di posto pari e la somma delle cifre di posto dispari è 0, 11 o un multiplo di 11. 48) Determinare se un numero intero di 4 cifre è un quadretto perfetto, avente le prime due cifre uguali e così pure le altre due. 49) Scrivere un programma che, introdotto da tastiera un numero intero minore di Maxint, fornisca in uscita la cifra delle unità, delle decine ecc... in parole. (Es. Il numero 739 ha in risposta unità nove, decine tre, centinaia sette.) 50) Scrivere un ciclo che stampi le radici quadrate dei numeri da 20 a 30. 4 51) Determinare dopo quanti anni, dato un capitale iniziale e un certo tasso di interesse, si raggiunge un capitale doppio del dato. 52) Data una sequenza di numeri naturali (con massimo di 3 cifre) in input interrotta quando appaiono consecutivamente due numeri la cui somma è 100, stampare la media di tutti i numeri multipli di 3 e dire se sono stati inseriti più numeri pari o dispari 53) Siano dati due caratteri in input. Stampare la sequenza ordinata in senso crescente di tutti i caratteri che cono compresi nel codice ASCII tra i due caratteri immessi. 54) Un numero triangolare è un numero costituito dalla somma dei primi n numeri naturali per un certo n. Scrivere un algoritmo che stabilisce se un numero intero positivo K è un numero triangolare. (Dato un numero k trovare N se esiste per cui è triangolare I:=1 While S<=k do Begin S:=s+I I:=i+1 End If s=k then “triangolare” Else “no”) 55) Dati N e M con M>0 calcolare NM 56) Dati 3 numeri A, B, C dire se possono costituire le misure di un triangolo ( il lato maggiore deve essere minore della somma degli altri due). In caso affermativo dire se è equilatero, scaleno o isoscele. 57) Un numero N è AMICABILI a M se N è uguale alla somma dei divisori dell’altro (escluso se stesso) 58) Due numeri N e N+2 si dicono gemelli se N e N+2 sono primi 59) Algoritmo che legga una sequenza di 100 numeri interi e stampa la somma SN dei numeri negativi e la somma SP dei numeri positivi 5