{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def insertionSort(lista):\n", " for indice in range(1,len(lista)):\n", " valoreCorrente = lista[indice]\n", " posizione = indice\n", " while posizione>0 and lista[posizione-1]>valoreCorrente:\n", " lista[posizione]=lista[posizione-1]\n", " posizione = posizione-1\n", " lista[posizione]=valoreCorrente\n", " #print('{} -> {}'.format(indice,lista))\n", "\n", "miaLista = [29,3,71,34,8,55,91,5,27]\n", "print(miaLista)\n", "insertionSort(miaLista)\n", "print(miaLista)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "#### Esercizio\n", "#Scrivere un programma che converte un numero in una base da 2 a 10 ad un numero in base 10\n", "\n", "base=int(input(\"inserisci la base (2..10): \"))\n", "s=input(\"inserisci il numero in base \"+str(base)+\": \")\n", "\n", "valore=0\n", "for i in range(len(s)):\n", " valore=valore+int(s[i])*base**(len(s)-(i+1))\n", "print(s,\"in base 10 vale\",valore)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def fibonacci(n):\n", " if n<=2:\n", " return 1\n", " return fibonacci(n-1)+fibonacci(n-2)\n", "\n", "fibonacci(7)\n", " " ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def fattoriale(n):\n", " if n==0:\n", " return 1\n", " return n*fattoriale(n-1)\n", "fattoriale(3)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def printFattoriale(n):\n", " if n==0:\n", " print('fattoriale(0)=1')\n", " return 1\n", " print('fattoriale({})={}*fattoriale({})'.format(n,n,n-1))\n", " return n*printFattoriale(n-1)\n", "printFattoriale(8)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Esercizio\n", "#StampareUnAlbero\n", "#\n", "# ----*---- \n", "# ---*-*---\n", "# --*-*-*--\n", "# -*-*-*-*-\n", "# *-*-*-*-*\n", "# ---*-*--- \n", "# ---*-*--- \n", "\n", "hrami = int(input(\"inserisci l'altezza della parte rami e foglie: \" ))\n", "htronco = int(input(\"inserisci l'altezza tronco: \" ))\n", "l = int(input(\"inserisci la larghezza del tronco: \" ))\n", "lrami = 2*hrami-1\n", "\n", "#stampo i rami e foglie\n", "for i in range(hrami):\n", " print('-'*(hrami-(i+1)) + '* '*i+'*' + '-'*(hrami-(i+1)))\n", "# stampa il tronco\n", "\n", "for i in range(htronco):\n", " print('-'*(hrami-l) + '* '*(l-1)+'*' + '-'*(hrami-l))" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "#\n", "# ----*---- \n", "# ---***---\n", "# --*****--\n", "# -*******-\n", "# *********\n", "# ---***--- \n", "# ---***---\n", "\n", "hrami = int(input(\"inserisci l'altezza della parte rami e foglie: \" ))\n", "htronco = int(input(\"inserisci l'altezza tronco: \" ))\n", "l = int(input(\"inserisci la larghezza del tronco (dispari): \" ))\n", "lrami = 2*hrami-1\n", "\n", "#stampo i rami e foglie\n", "for i in range(hrami):\n", " print('-'*(hrami-(i+1)) + '*'*(2*i+1) + '-'*(hrami-(i+1)))\n", "# stampa il tronco\n", "for i in range(htronco):\n", " print('-'*(hrami-(l+1)//2) + '*'*(l) + '-'*(hrami-(l+1)//2))" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.2" } }, "nbformat": 4, "nbformat_minor": 2 }