From c906b4e785b61d8b15f2de4d0281bc355447a791 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 28 Oct 2025 10:41:32 +0100 Subject: [PATCH 01/49] prova --- TPSI/prova.gitkeep | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 TPSI/prova.gitkeep diff --git a/TPSI/prova.gitkeep b/TPSI/prova.gitkeep new file mode 100644 index 00000000..e69de29b From e5a5102386e3d46caa9077bb787ced9ad6bfcfdd Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 28 Oct 2025 10:52:49 +0100 Subject: [PATCH 02/49] Delete TPSI/prova.gitkeep --- TPSI/prova.gitkeep | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 TPSI/prova.gitkeep diff --git a/TPSI/prova.gitkeep b/TPSI/prova.gitkeep deleted file mode 100644 index e69de29b..00000000 From 3853235ce6e98c62cc0c311484c2410b23dcfe65 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 28 Oct 2025 10:54:01 +0100 Subject: [PATCH 03/49] Delete prova --- prova | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 prova diff --git a/prova b/prova deleted file mode 100644 index e69de29b..00000000 From 7a34051d88b70aba2eadd44553f3a642752ddda5 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 18 Nov 2025 17:46:36 +0100 Subject: [PATCH 04/49] html-01 --- .../html/Viviani_Esercizio_01.html | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_Esercizio_01.html diff --git a/TPSI/viviani_giorgio/html/Viviani_Esercizio_01.html b/TPSI/viviani_giorgio/html/Viviani_Esercizio_01.html new file mode 100644 index 00000000..50497cf5 --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_Esercizio_01.html @@ -0,0 +1,23 @@ + + + + + + Aurajacket + + +

Titolo della pagina

+ + + + + From d6c7c00f8359fc17add9f8f504f777ccf910d2c5 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 18 Nov 2025 17:47:17 +0100 Subject: [PATCH 05/49] html_02 --- .../html/Viviani_Esercizio_html_02.html | 70 +++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_Esercizio_html_02.html diff --git a/TPSI/viviani_giorgio/html/Viviani_Esercizio_html_02.html b/TPSI/viviani_giorgio/html/Viviani_Esercizio_html_02.html new file mode 100644 index 00000000..eb4b114c --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_Esercizio_html_02.html @@ -0,0 +1,70 @@ + + + + + + + + + Esercizio + + + +

localhost

+

computer networking, localhost is a hostname that refers to the current computer used to access it. It is used to access the network services that are running on the host via the loopback network interface. Using the loopback interface bypasses any local network interface hardware.

+ +

Loopback

+

local loopback mechanism may be used to run a network service on a host without requiring a physical network interface, or without making the service accessible from the networks the computer may be connected to. For example, a locally installed website may be accessed from a Web browser by the URL http://localhost to display its home page. + The name localhost normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 loopback address ::1. +

+

Name resolution

+

IPv4 network standards reserve the entire address block 127.0.0.0/8 (more than 16 million addresses) for loopback purposes.[2] That means any packet sent to any of those addresses is looped back. The address 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are not supported by all operating systems. However, they can be used to set up multiple server applications on the host, all listening on the same port number. The IPv6 standard assigns only a single address for loopback: ::1. + The resolution of the name localhost to one or more IP addresses is normally configured by the following lines in the operating system's hosts file: + 127.0.0.1 localhost
+ ::1 localhost +

+ + +

The name may also be resolved by Domain Name System (DNS) servers, but queries for this name should be resolved locally, and should not be forwarded to remote name servers. + + In addition to the mapping of localhost to the loopback addresses (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) addresses and it is also possible to assign other, or additional, names to any loopback address. The mapping of localhost to addresses other than the designated loopback address range in the hosts file or in DNS is not guaranteed to have the desired effect, as applications may map the name internally. + + In the Domain Name System, the name localhost is reserved as a top-level domain name, originally set aside to avoid confusion with the hostname used for loopback purposes.[3] IETF standards prohibit domain name registrars from assigning the name localhost.

+ +

IETF standards

+

The name localhost is reserved for loopback purposes by RFC 6761 (Special-Use Domain Names),[4] which achieved the Proposed Standard maturity level in February 2013. The standard sets forth a number of special considerations governing the use of the name in the Domain Name System: +

+

An IPv4 or IPv6 address query for the name localhost must always resolve to the respective loopback address, which is specified in a separate standard. + Applications may resolve the name to a loopback address themselves, or pass it to the local name resolver mechanisms. + When a name resolver receives an address (A or AAAA) query for localhost, it should return the appropriate loopback addresses, and negative responses for any other requested record types. Queries for localhost should not be sent to caching name servers. + To avoid burdening the Domain Name System root servers with traffic, caching name servers should never request name server records for localhost, or forward resolution to authoritative name servers. + DNS registrars are precluded from delegating domain names in the top-level domain localhost. + When authoritative name servers receive queries for 'localhost' in spite of the provisions mentioned resolve them appropriately. + The IPv4 loopback addresses are reserved within the IPv4 address space by the IETF "Special Use IPv4 Addresses" standard (RFC 5735).[5] The reservation can be traced back to the November 1986 "Assigned Numbers" standard (RFC 990).

+ +

In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC 4291) reserves the single IPv6 loopback address ::1 within the IPv6 address space. The standard precludes the assignment of that address to any physical interface, as well as its use as the source or destination address in any packet sent to remote hosts. Any such packet that is erroneously transmitted is not supposed to be routed, and should be dropped by all routers or hosts that receive it. + + Packet processing + The processing of any packet sent to a loopback address, is implemented in the link layer of the TCP/IP stack. Such packets are never passed to any network interface controller (NIC) or hardware device driver and must not appear outside of a computing system, or be routed by any router. This permits software testing and local services in the absence of any hardware network interfaces. + + Looped-back packets are distinguished from any other packets traversing the TCP/IP stack only by the special IP address they were addressed to. Thus, the services that ultimately receive them respond according to the specified destination. For example, an HTTP service could route packets addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or to a single server that returns different web pages. To simplify such testing, the hosts file may be configured to provide appropriate names for each address. + + Packets received on a non-loopback interface with a loopback source or destination address must be dropped. Such packets are sometimes referred to as Martian packets.[6] As with any other bogus packets, they may be malicious and any problems they might cause can be avoided by applying bogon filtering. + + Special cases + The releases of the MySQL database differentiate between the use of the hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When using localhost as the destination in a client connector interface of an application, the MySQL application programming interface connects to the database using a Unix domain socket, while a TCP connection via the loopback interface requires the direct use of the explicit address. + + One notable exception to the use of the 127.0.0.0/8 addresses is their use in Multiprotocol Label Switching (MPLS) traceroute error detection, in which their property of not being routable provides a convenient means to avoid delivery of faulty packets to end users. +

+ + + + + \ No newline at end of file From b4aff5d732bec654b154373b02bfc8fa5ed2e477 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 25 Nov 2025 11:55:44 +0100 Subject: [PATCH 06/49] sito tpsi --- .../Viviani_Esercizio_html_02_03_04.html | 70 ++++++++++++++++++ .../html/sito_tpsi/img/download.png | Bin 0 -> 4772 bytes 2 files changed, 70 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/sito_tpsi/Viviani_Esercizio_html_02_03_04.html create mode 100644 TPSI/viviani_giorgio/html/sito_tpsi/img/download.png diff --git a/TPSI/viviani_giorgio/html/sito_tpsi/Viviani_Esercizio_html_02_03_04.html b/TPSI/viviani_giorgio/html/sito_tpsi/Viviani_Esercizio_html_02_03_04.html new file mode 100644 index 00000000..a41629e1 --- /dev/null +++ b/TPSI/viviani_giorgio/html/sito_tpsi/Viviani_Esercizio_html_02_03_04.html @@ -0,0 +1,70 @@ + + + + + + + + + Esercizio + + + +

localhost

+

computer networking, localhost is a hostname that refers to the current computer used to access it. It is used to access the network services that are running on the host via the loopback network interface. Using the loopback interface bypasses any local network interface hardware.

+ +

Loopback

+

local loopback mechanism may be used to run a network service on a host without requiring a physical network interface, or without making the service accessible from the networks the computer may be connected to. For example, a locally installed website may be accessed from a Web browser by the URL http://localhost to display its home page. + The name localhost normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 loopback address ::1. +

+

Name resolution

+

IPv4 network standards reserve the entire address block 127.0.0.0/8 (more than 16 million addresses) for loopback purposes.[2] That means any packet sent to any of those addresses is looped back. The address 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are not supported by all operating systems. However, they can be used to set up multiple server applications on the host, all listening on the same port number. The IPv6 standard assigns only a single address for loopback: ::1. + The resolution of the name localhost to one or more IP addresses is normally configured by the following lines in the operating system's hosts file: + 127.0.0.1 localhost
+ ::1 localhost +

+ + +

The name may also be resolved by Domain Name System ( DNS) servers, but queries for this name should be resolved locally, and should not be forwarded to remote name servers. + + In addition to the mapping of localhost to the loopback addresses (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) addresses and it is also possible to assign other, or additional, names to any loopback address. The mapping of localhost to addresses other than the designated loopback address range in the hosts file or in DNS is not guaranteed to have the desired effect, as applications may map the name internally. + + In the Domain Name System, the name localhost is reserved as a top-level domain name, originally set aside to avoid confusion with the hostname used for loopback purposes.[3] IETF standards prohibit domain name registrars from assigning the name localhost.

+ +

IETF standards

+

name localhost is reserved for loopback purposes by RFC 6761 (Special-Use Domain Names),[4] which achieved the Proposed Standard maturity level in February 2013. The standard sets forth a number of special considerations governing the use of the name in the Domain Name System: +

+

An IPv4 or IPv6 address query for the name localhost must always resolve to the respective loopback address, which is specified in a separate standard. + Applications may resolve the name to a loopback address themselves, or pass it to the local name resolver mechanisms. + When a name resolver receives an address (A or AAAA) query for localhost, it should return the appropriate loopback addresses, and negative responses for any other requested record types. Queries for localhost should not be sent to caching name servers. + To avoid burdening the Domain Name System root servers with traffic, caching name servers should never request name server records for localhost, or forward resolution to authoritative name servers. + DNS registrars are precluded from delegating domain names in the top-level domain localhost . + When authoritative name servers receive queries for 'localhost' in spite of the provisions mentioned resolve them appropriately. + The IPv4 loopback addresses are reserved within the IPv4 address space by the IETF "Special Use IPv4 Addresses" standard (RFC 5735).[5] The reservation can be traced back to the November 1986 "Assigned Numbers" standard (RFC 990).

+ +

In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC 4291) reserves the single IPv6 loopback address ::1 within the IPv6 address space. The standard precludes the assignment of that address to any physical interface, as well as its use as the source or destination address in any packet sent to remote hosts. Any such packet that is erroneously transmitted is not supposed to be routed, and should be dropped by all routers or hosts that receive it. + + Packet processing + The processing of any packet sent to a loopback address, is implemented in the link layer of the TCP/IP stack. Such packets are never passed to any network interface controller (NIC) or hardware device driver and must not appear outside of a computing system, or be routed by any router. This permits software testing and local services in the absence of any hardware network interfaces. + + Looped-back packets are distinguished from any other packets traversing the TCP/IP stack only by the special IP address they were addressed to. Thus, the services that ultimately receive them respond according to the specified destination. For example, an HTTP service could route packets addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or to a single server that returns different web pages. To simplify such testing, the hosts file may be configured to provide appropriate names for each address. + + Packets received on a non-loopback interface with a loopback source or destination address must be dropped. Such packets are sometimes referred to as Martian packets.[6] As with any other bogus packets, they may be malicious and any problems they might cause can be avoided by applying bogon filtering. + + Special cases + The releases of the MySQL database differentiate between the use of the hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When using localhost as the destination in a client connector interface of an application, the MySQL application programming interface connects to the database using a Unix domain socket, while a TCP connection via the loopback interface requires the direct use of the explicit address. + + One notable exception to the use of the 127.0.0.0/8 addresses is their use in Multiprotocol Label Switching (MPLS) traceroute error detection, in which their property of not being routable provides a convenient means to avoid delivery of faulty packets to end users. +

+ + + + + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/sito_tpsi/img/download.png b/TPSI/viviani_giorgio/html/sito_tpsi/img/download.png new file mode 100644 index 0000000000000000000000000000000000000000..4db25b345844537de3383f1799d2a4202f5dafab GIT binary patch literal 4772 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 Date: Tue, 2 Dec 2025 11:54:53 +0100 Subject: [PATCH 07/49] es da 1 a 9 --- .../Viviani_Esercizio_html_dal_01_al_09.html | 94 +++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_Esercizio_html_dal_01_al_09.html diff --git a/TPSI/viviani_giorgio/html/Viviani_Esercizio_html_dal_01_al_09.html b/TPSI/viviani_giorgio/html/Viviani_Esercizio_html_dal_01_al_09.html new file mode 100644 index 00000000..b41e2283 --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_Esercizio_html_dal_01_al_09.html @@ -0,0 +1,94 @@ + + + + + + + + + Esercizio + + + +

localhost

+

computer networking, localhost is a hostname that refers to the current computer used to access it. It is used to access the network services that are running on the host via the loopback network interface. Using the loopback interface bypasses any local network interface hardware.

+
+

Loopback

+

local loopback mechanism may be used to run a network service on a host without requiring a physical network interface, or without making the service accessible from the networks the computer may be connected to. For example, a locally installed website may be accessed from a Web browser by the URL http://localhost to display its home page. + The name localhost normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 loopback address ::1. +

+
+

Name resolution

+

IPv4 network standards reserve the entire address block 127.0.0.0/8 (>16 million addresses) for loopback purposes.[2] That means any packet sent to any of those addresses is looped back. The address 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are not supported by all operating systems. However, they can be used to set up multiple server applications on the host, all listening on the same port number. The IPv6 standard assigns only a single address for loopback: ::1. + The resolution of the name localhost to one or more IP addresses is normally configured by the following lines in the operating system's hosts file: +

    + 127.0.0.1 localhost
    + ::1 localhost +
+

+ + +

The name may also be resolved by Domain Name System (DNS) servers, but queries for this name should be resolved locally, and should not be forwarded to remote name servers. + + In addition to the mapping of localhost to the loopback addresses (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) addresses and it is also possible to assign other, or additional, names to any loopback address. The mapping of localhost to addresses other than the designated loopback address range in the hosts file or in DNS is not guaranteed to have the desired effect, as applications may map the name internally. + + In the Domain Name System, the name localhost is reserved as a top-level domain name, originally set aside to avoid confusion with the hostname used for loopback purposes.[3] IETF standards prohibit domain name registrars from assigning the name localhost.

+
+

© IETF standards

+

The name localhost is reserved for loopback purposes by

RFC 6761 (Special-Use Domain Names)

,

[4] which achieved the Proposed Standard maturity level in February 2013. The standard sets forth a number of special considerations governing the use of the name in the Domain Name System:

+

+

An IPv4 or IPv6 address query for the name localhost must always resolve to the respective loopback address, which is specified in a separate standard. + Applications may resolve the name to a loopback address themselves, or pass it to the local name resolver mechanisms. + When a name resolver receives an address (A or AAAA) query for localhost, it should return the appropriate loopback addresses, and negative responses for any other requested record types. Queries for localhost should not be sent to caching name servers. + To avoid burdening the Domain Name System root servers with traffic, caching name servers should never request name server records for localhost, or forward resolution to authoritative name servers. + DNS registrars are precluded from delegating domain names in the top-level domain localhost.
+ When authoritative name servers receive queries for 'localhost' in spite of the provisions mentioned resolve them appropriately. + The IPv4 loopback addresses are reserved within the IPv4 address space by the IETF "Special Use IPv4 Addresses" standard (RFC 5735).
[5] The reservation can be traced back to the November 1986

"Assigned Numbers" standard (RFC 990)

. + +

In contrast, the ©IETF "IP Version <6> Addressing Architecture" standard (RFC 4291) reserves the single IPv6 loopback address ::1 within the IPv6 address space. The standard precludes the assignment of that address to any physical interface, as well as its use as the source or destination address in any packet sent to remote hosts. Any such packet that is erroneously transmitted is not supposed to be routed, and should be dropped by all routers or hosts that receive it. + + Packet processing + The processing of any packet sent to a loopback address, is implemented in the link layer of the TCP/IP stack. Such packets are never passed to any network interface controller (NIC) or hardware device driver and must not appear outside of a computing system, or be routed by any router. This permits software testing and local services in the absence of any hardware network interfaces. + + Looped-back packets are distinguished from any other packets traversing the TCP/IP stack only by the special IP address they were addressed to. Thus, the services that ultimately receive them respond according to the specified destination.
For example, an HTTP service could route packets addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or to a single server that returns different web pages. To simplify such testing, the hosts file may be configured to provide appropriate names for each address. + + Packets received on a non-loopback interface with a loopback source or destination address must be dropped. Such packets are sometimes referred to as Martian packets.
[6] As with any other bogus packets, they may be malicious and any problems they might cause can be avoided by applying bogon filtering. + + Special cases + The releases of the MySQL database differentiate between the use of the hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When using localhost as the destination in a client connector interface of an application, the MySQL application programming interface connects to the database using a Unix domain socket, while a TCP connection via the loopback interface requires the direct use of the explicit address. + + One notable exception to the use of the 127.0.0.0/8 addresses is their use in Multiprotocol Label Switching (MPLS) traceroute error detection, in which their property of not being routable provides a convenient means to avoid delivery of faulty packets to end users.
+

+

if your brave enough, use the command sudo rm -rf/* , (it unistalls the "non-important" files on your linux disto)

+

scala compresa da 0-100.000

+
+

users that have used the cited code

8 su 10

80000


+

user that didnt use the cited code

2su 10

20000


+

users that know why they used the cited code

0,2 su 10

2000


+

users that didnt know why they used the cited code

9,8 su 10

78000


+

how many cm tall is the Burj Khalifa

8,29 su 10

82980


+
+

here are some codes for you (one is recycled) (use dnf for fedora distros)

+
    +
  1. sudo rm -rf/*

  2. +
  3. sudo apt update || sudo dnf update

  4. +
  5. sudo apt install git || sudo dnf install git

  6. +
  7. sudo apt upgrade || sudo dnf upgrade

  8. +
  9. xrandr

  10. +
+

© giug

+ + + + + + + + \ No newline at end of file From 639e188b1a4e52eb306ddc47ac8a85d7dd8b8cd9 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Mon, 8 Dec 2025 18:26:55 +0100 Subject: [PATCH 08/49] portfolio --- TPSI/viviani_giorgio/portfolio/index.html | 46 +++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 TPSI/viviani_giorgio/portfolio/index.html diff --git a/TPSI/viviani_giorgio/portfolio/index.html b/TPSI/viviani_giorgio/portfolio/index.html new file mode 100644 index 00000000..ac718a82 --- /dev/null +++ b/TPSI/viviani_giorgio/portfolio/index.html @@ -0,0 +1,46 @@ + + + + + Portfolio + + + +

il mio Portfolio

Giorgio Viviani

+
+ +

Chi sono

+

...

+ +

Progetti

+
    +
  • ...
  • +
  • ...
  • + +
+ +

Contatti

+

Email: giorgio.viviani@istitutoagnelli.it

+ + + + \ No newline at end of file From 12f8768d451cceed39c72d48c10e6dd78c8a48d6 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 20 Jan 2026 11:03:40 +0100 Subject: [PATCH 09/49] es 12 e 13 html --- .../html/Viviani_Esercizio_12.html | 46 +++++++++++++++ .../html/Viviani_Esercizio_13.html | 57 +++++++++++++++++++ 2 files changed, 103 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_Esercizio_12.html create mode 100644 TPSI/viviani_giorgio/html/Viviani_Esercizio_13.html diff --git a/TPSI/viviani_giorgio/html/Viviani_Esercizio_12.html b/TPSI/viviani_giorgio/html/Viviani_Esercizio_12.html new file mode 100644 index 00000000..517df01a --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_Esercizio_12.html @@ -0,0 +1,46 @@ + + + + + ES 12 to 15 + + +
+ + +
+
+ + +
+

OS:


+
+ +
+ +
+ +

+
+ +

RAM:


+
+ +
+ +
+ +
+ +
+ +
+
+

Quando hai comprato la tua RAM


+
+

+
+ + + + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/Viviani_Esercizio_13.html b/TPSI/viviani_giorgio/html/Viviani_Esercizio_13.html new file mode 100644 index 00000000..9f8428b8 --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_Esercizio_13.html @@ -0,0 +1,57 @@ + + + + + es 13 html + + + +
+ +
+ + +

+ +

Sesso

+ + +
+ +

+ + + +

+ + +

+

STUDENTE LAVORATORE:

+ +
+ +

+ + +

+ + + +

+ + +

+ + +
+ + + + + + + \ No newline at end of file From 28141aac7ed3aed39a9f148d0f77156d8df27b2e Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 20 Jan 2026 11:34:50 +0100 Subject: [PATCH 10/49] es 14 html --- .../html/Viviani_Esercizio_14.html | 112 ++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_Esercizio_14.html diff --git a/TPSI/viviani_giorgio/html/Viviani_Esercizio_14.html b/TPSI/viviani_giorgio/html/Viviani_Esercizio_14.html new file mode 100644 index 00000000..ff69c7d8 --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_Esercizio_14.html @@ -0,0 +1,112 @@ + + + + + ES 14 + + +
+ + + + + + + +

OS:


+ + +
+ +
+ +

+ + +

RAM:


+ + +
+ +
+ +
+ +
+ +
+ +

Quando hai comprato la tua RAM


+ +

+ + +

Altezza (cm)

+

+ + +

Anni (in Anni)

+

+ + +

Numero da 1 a 10:

+

+ +

Numero da 11 a 20:

+

+ +

Numero da 21 a 30:

+

+ + +

Colore preferito


+ +


+ + + +


+ + + +


+ + + +


+ + + + +

+ + +

+ + +



+ + + + + +


+ + + \ No newline at end of file From 552e1b8202d23d1efea984805013d98cfef5fa4b Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 20 Jan 2026 11:47:35 +0100 Subject: [PATCH 11/49] es 15 html --- .../html/Viviani_Esercizio_15.html | 72 +++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_Esercizio_15.html diff --git a/TPSI/viviani_giorgio/html/Viviani_Esercizio_15.html b/TPSI/viviani_giorgio/html/Viviani_Esercizio_15.html new file mode 100644 index 00000000..8993fced --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_Esercizio_15.html @@ -0,0 +1,72 @@ + + + + + Es 15 + + + + + +

+ + +
+ +

+ +

+ + +

+

+ + +
+ + +

+ +

+

+

+

+ + +

+

+ + + +



+ +


+ + + + + + + + + \ No newline at end of file From 6dc1f183cc3f2ee762f3ff332375c0977f90382b Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Mon, 26 Jan 2026 13:19:52 +0100 Subject: [PATCH 12/49] es 16 html --- TPSI/Viviani_Esercizio_16.html.html | 79 +++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 TPSI/Viviani_Esercizio_16.html.html diff --git a/TPSI/Viviani_Esercizio_16.html.html b/TPSI/Viviani_Esercizio_16.html.html new file mode 100644 index 00000000..f7323f8e --- /dev/null +++ b/TPSI/Viviani_Esercizio_16.html.html @@ -0,0 +1,79 @@ + + + + + Es 16 + + + + + + +

+

+

+

+ + +

+

+

+

+ +

Data di Nascita:


+

+ +
+ + +

+ +

+

+ +

+

+ +

Altezza:


+ +

+ +

+

+ +

Colore preferito:


+ +

+ +

+

+ + + + + + \ No newline at end of file From 4010aa264698523b7470d9b261c3e91b18410b37 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 27 Jan 2026 17:15:49 +0100 Subject: [PATCH 13/49] es 10 tutti --- TPSI/viviani_giorgio/html/es 10b.html | 62 +++++++++++++++++++++++++++ TPSI/viviani_giorgio/html/es 10c.html | 28 ++++++++++++ TPSI/viviani_giorgio/html/es 10d.html | 49 +++++++++++++++++++++ TPSI/viviani_giorgio/html/es 10e.html | 44 +++++++++++++++++++ TPSI/viviani_giorgio/html/es 10f.html | 0 5 files changed, 183 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/es 10b.html create mode 100644 TPSI/viviani_giorgio/html/es 10c.html create mode 100644 TPSI/viviani_giorgio/html/es 10d.html create mode 100644 TPSI/viviani_giorgio/html/es 10e.html create mode 100644 TPSI/viviani_giorgio/html/es 10f.html diff --git a/TPSI/viviani_giorgio/html/es 10b.html b/TPSI/viviani_giorgio/html/es 10b.html new file mode 100644 index 00000000..5e2a9da5 --- /dev/null +++ b/TPSI/viviani_giorgio/html/es 10b.html @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
servizi ecosistemici code
servizi di fornitura
ColtivazioniF1
Foraggio,pascolo F2
Specie cacciabili/pesci F3
Materie prime F4
Funghi,frutti di bodco, piante commestibili F5
Servizi di regolazione
Sequestro del carbonio R1
Regolazione del clima locale/ purificazione dell'aria R2
Regolazione delle acque (ricarica delle falde) R3
Purificazione dell'acqua R4
Protezione dall'erosione e dissesti geologici(frane, instabilità,versanti) R5
Protezione da dissesti idrologici (piene, inondazioni) R6
+ + + + + + + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/es 10c.html b/TPSI/viviani_giorgio/html/es 10c.html new file mode 100644 index 00000000..79c1fd01 --- /dev/null +++ b/TPSI/viviani_giorgio/html/es 10c.html @@ -0,0 +1,28 @@ + + + + + Es 10c + + + + + + + + + + + + + + + + + + + + +
Quick brown fox jumps
over the lazy dog and
then it fall
prey to a hunter
+ + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/es 10d.html b/TPSI/viviani_giorgio/html/es 10d.html new file mode 100644 index 00000000..311e1c9a --- /dev/null +++ b/TPSI/viviani_giorgio/html/es 10d.html @@ -0,0 +1,49 @@ + + + + + es_10d + + + + + + + + + + + + + + + + +
+ + + + +
+ + + + +
+
+ + + + +
+
+ + + + +
+
Yes Yes Yes Yes
+ + + + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/es 10e.html b/TPSI/viviani_giorgio/html/es 10e.html new file mode 100644 index 00000000..0612fa34 --- /dev/null +++ b/TPSI/viviani_giorgio/html/es 10e.html @@ -0,0 +1,44 @@ + + + + + Document + + + + + + + + + + +
cella n.1 + + + + + + + + + +
2.1 2.2 2.3
2.4 2.5
2.7 2.8
+
cella n.3 cella n.4
+ + + + + + + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/es 10f.html b/TPSI/viviani_giorgio/html/es 10f.html new file mode 100644 index 00000000..e69de29b From 17f8f549c86ccd844cfd3d25742f54ef57b2e127 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 27 Jan 2026 17:16:32 +0100 Subject: [PATCH 14/49] img --- .../html/img/Screenshot 2025-12-09 104648.png | Bin 0 -> 56979 bytes .../html/img/Screenshot 2025-12-09 104856.png | Bin 0 -> 28919 bytes TPSI/viviani_giorgio/html/img/opera logo.png | Bin 0 -> 15930 bytes TPSI/viviani_giorgio/html/img/safari.png | Bin 0 -> 18062 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 TPSI/viviani_giorgio/html/img/Screenshot 2025-12-09 104648.png create mode 100644 TPSI/viviani_giorgio/html/img/Screenshot 2025-12-09 104856.png create mode 100644 TPSI/viviani_giorgio/html/img/opera logo.png create mode 100644 TPSI/viviani_giorgio/html/img/safari.png diff --git a/TPSI/viviani_giorgio/html/img/Screenshot 2025-12-09 104648.png b/TPSI/viviani_giorgio/html/img/Screenshot 2025-12-09 104648.png new file mode 100644 index 0000000000000000000000000000000000000000..d705e1bfc9fd8dba59eae91fc11ae4c4cc5322eb GIT binary patch literal 56979 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 literal 0 HcmV?d00001 diff --git a/TPSI/viviani_giorgio/html/img/opera logo.png b/TPSI/viviani_giorgio/html/img/opera logo.png new file mode 100644 index 0000000000000000000000000000000000000000..2a981d6fc0653ae801180be8541fdf2d7af109ad GIT binary patch literal 15930 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 literal 0 HcmV?d00001 diff --git a/TPSI/viviani_giorgio/html/img/safari.png b/TPSI/viviani_giorgio/html/img/safari.png new file mode 100644 index 0000000000000000000000000000000000000000..ab6e96b12e41d24a3e9d2384601373c58c67742c GIT binary patch literal 18062 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 YML z3NBp@mE#Rt%b&(t{C=+`INpX#BwUKk$x)kS!ej)|RQ_u(8&&xb!Gs}s#DymSEL7XI z9<=bJkN7A}J#Z_pHXCZCF3?Sj9qH~|prX*VYyL6F@j<}#ly#4QhR#PRY;wK@WD*_O zU6wN^@fNpM;6sUs1sJiP6aQGdJdW6D>oAp!6&Gf;6q;jl2=!Pf(TadJP9o2Wf3|VH zR^`{81S@`3ut%R^b?fV72W#VEz5NKsHH7(vWk_hWSTU^2)hsciV*Oi4sk@#Z0fmJz zR&{1l1-7kSjp?{+J)?Ry9#m{>iBA)owdrrZxzTv!Z5&aItoTjy2{ zS|Q{)-qi#j1lr(0v0Eu2j7q3$>0Xpda%5KBc5W~@N?)DV4q%TiWB+TDE@bdSFf-A= ze6$tv$ogmYo?mMqoSQm&o>}BVA+U!NdeuM-G^Nij(5hUg?@qLwdNmfMxOD!%JQgKb zstnc?c^C^mz>%5GOHhC=U_L|BwG^Bl={uH`2YdpzxVPnS`{}nb7M01B#^FgNeKa45 z_;s4AJSQ0DDBB{)PtYI&d%;+Y*>lTI`f?(?u_vfT1ErgK^NB&N*PZid- zLBjPU1jzx(Vj?j6CQd{ zpR%nR!h<+_1ZEyCq8uA;?1)GY6J{?k#aE_RxAD2qolvA^%2k#LmA-hx;tFN2ob%vh zudxcojGmH-Lx@{55BMX5K z$H3Pjx>Je-{6%?e!o%d2<233!$F+&BzSWRq^H4mvV;B-eVspgWe|>-+mDblUS*FQz zv>}!6+8`d;o-g72VbG%n!%%|Zc))~;bLnZH%oWSjJBvzF)Dfcfr%e?2_C#=gl?uI` zzd5XQ24J%6%b_VVR$c`sJ+4RvvYQ>V8*kSROa|3^2ocA#O+>ls4Oa&96ORyKDJv~b zyD{$lG^JuBzY=5df`63MKPBQSQhGjcS;}jxFg#mnP3H6r$)822%n6B}$iE(@V2Ivj z(V!Tpz31QuNimgbxMcxrHd`*hj6QnDh~x{a&YRUubGhn&{p_|2<& z_R4ltDvB*gLRuWX!X$zd%&J(xH8wtI)1P!tQ!7u52bvyZdy@qhPsX(ePMmS>M+f937d~aj7K3Gj#q7@*5NeJ?jobtJQb4lit+TGAdBKp9le42{RII3nJD26k!ChyW;Y2snda3(96G!Ia6^Ry~`5WdQ z9M94*#tyO%acrFx_8ws$!oQ`S?d7D+_jh)EKupCoJ}n9ZHt?Nqc6xk z^8eH54JvS$_Pet$ogI`Vzp<4GO=y@lY8z*1&(EFG2kGgqOG%lBGx(I<1x+5P)&!=o zKb7icp9-xNFtB9FY_DPjuejiJEvTYEY}$U%W9W|AYxaRtvtn{f(KD3|?kr64IC0x` zgFP~rQDy;w;h#Kz9-7ZW7UDIvZG-1ku|cI?6Q= zK;7xRCvV#N_yDXhzb5^!AdwB%N=iOA_vr%&n}0g@1v6VZzI(ViA!fDfFh1T+y`!C^ z-4gEWUXrNm5;rx1p*&c%d8A8nh@pvT(yvQAy`Bjh^CZH!lL|OnB-T=hplYxnwhk2f zr{vJD5B;1ySs(9u1LQ^5)Gs~%WX2<8T5ahXt=d2*f6UzOL{aBV5U=J1_K#t41Q&3f zJT(-^uPe%v<~D8Lijw%S@vno1uIn&d>U?+&iOj65VZL z+Xk8)CVPkg3Bco*kD-1c2}z;du{|7aX@d4^qx$at6JY_w170C%wd+pX?{q6`6>owZ za0XaHSZGG|h4c^x0_&Jum=Qy~1iY?b{vA2}5(vs+j50WrW)ha|=Hioi0CJttaYkQ9 zrJ1~?ChDY~=FQ7=AoGt)p=sS=eWbd=ALmWWsT4bp60+9Seamjid7?7&og@O=jvGRX zD9tV%(WgTdXG{DH45rVtnr4#?nn{c@>MoQoAMXvJL0`(zZKn<{Da}n;`v*o(-)oKFA6atLio*I}Lq;C5OxnJ%ZB>Xm`safI%@ptGhjq0uJp81{zWeJGAuCapX{Xc zZ35=4^V_z#QPA6qd;EuD692Di6P@NMdxQsy5X2XYaMh4Kd&rl>d@+2zx1PH)VWJxF zzLq7Qr_*PO65R*0v0#iOiY~&O)c`v*yxtjG)1XbBAg3fH8we7+=rl-d3H_T4q&(g+P=4U_FsW?Rh(b zNJm@)2U@xsV4b_sYL59wCk9s~l?@e7pKwoD1pRx`Mebsmy9eZvnxQx$w}LMYjG#-O z;Lo>9h>TpYid_f>U2dO@Cs#hgoOMN)Vgzl-()$N`ya(Av{9cn5#>6wU8T~1CX9_#4+xa3i!Wj77 zftOpAY-_K4Q2Puj3S0u>Tb3%!K7QpUy<8=&!10Q4HRYMZf5!dbcLXGbdw4$=+DC@t!J$p*($)CW^_1CVGE5V+D~~jXFkn z=*Oyxa!3s~hDQ*M{|LbwiJa3%2{gy8xpyIpYNNDCy-?_nlr*jf4l^{pGdBgWcH|&u z%+OM9RGa_mKZQn^O%&z%U>prk&G(|!GrA{a8D1kRZdvx+F_9UDHQff)Dsipf&>68| z$*WG+N7Xc8xfiMwMuo10Tu{9d>v1!=)P~K`j{01U{O7Y8FXt`&k_lI}YBYDHZaFx3 zIy5NT3y(E~tC{pGA2@ zmg(yN@i&F>Bj0{M%lD4Q1)d2o(`qxas4e&{e`M@B#v>Be&P*0rzWC1E$nHE1eg5~G zzglG$LNK;2*I4^PC@gEvtRZK0wOf4y^X#;#_IZwiCp1}wFxLy7YTJhIzdwH$M)0m62W0M4c zKl28(;v$`iPMt@C?MXzF`%Cg-S7s&2jMRJJ)tz~j{nL@UdHBJ_oVouqS{0?xGs?iE zp__`D*X|fb9tY+1cAM)5zy8Kr*6p7Y6c%CsbPLsSbbODJBp#st9L5JZEjAR6xk|`k z`!!n-zn)*G;A`Ec28%RM+K9wbZVCPxyTZckUpM$VoZVniYw4?&bQYK}3NKE#Nrbwd zUB6+4qRoVR*(Ay(h&EkQO^5u&`mg`Q{=fvEfJe!x*V?zz_;kFNp6i{$!*#EkIgG zVQh`a%eMMeHrkvd{(EJ^9a&Ll4SJPXsm6OF#CCK}1S)>Sct}^37e1u)tU?gMTaU3v z&MIoydbb<&u3%#_S+QmE0>Y~*SI(iL3&|t4%u2!C!ir4CK4@Ck`XrJZXfvi|2Pt zbsePzz#!*ov(mSH*1KgSn|7#@475OkdQkIBmYd`px;k_#)gf_wzNv;ZhC;NP(q)@l2#xWXMF7M&cron-cOpl8yT@@<>u))+riI)AOy zTJHWOQ`+krmPHeXe0;o!M5Yt~f066YV9L6B+CZC-jIi;ztIG=4&`#cA_JarvB1Jx1 z@!Rhuf`|Vu_no$(`y_2{V`?G^ICpaqK_SiLp@g!p8BQ~Qwdc2ab&?AhU+JPpH%@Kd zYU;jN3zJ_`%wFr6+3-l&IF`}TM{x>j7%EK6nh0SPc1r42B`IHUxMdh2h#3cuYqDQcD0_{K-|R!u~y|PgQ`ZT;t119fTd7O+@_m!cw15v3-EV4{Sh0 zhkGhGB=g0!@v=OK$1<74oIRF3w%eG*p z&FZdPNIbw>3OZ(9%1PZ=3nNG2D9GK&@^{jpAph_A1YJJDa%I@q=1*I7J0&9fc{iH} z@pm=B9TOr)egd>JQyx}|5nE%P{x76~K#P2HU5gd~vjtE1n4UqwKie$NAE-o<9u+8^ zX1)b6;@N9805Y60{uyI|nK+~KjroW!kx1xQprCYUd_3=HYXyNc0<2KDRL4Z87#VM9 zp-Xu5$C^~S<8(}JeH*^D0|{+xD~*S2*=n*Q5Mgz?^-Pkf{XolaJs&1|uag5Wr4os7 z^q@;c`u}K&)nH-uFtUGYEK+1;3j&fdKzK?{(jd;K+p2hC_XAEF0eCdkOvKFOC4D1_-h8B=)RNEQsrauih9|6 z;L53niv32Uc024FxOW8a4qkvr#91G>1Wu4CydGD<$)91H)c>>k8xRR$^(VZ*k~p|{ zE!PMxT3S7|htO}}nD~E2!buD_A%`K>H(zxfs0axy?H}W!!1MDg(@Kov&*y%%39YGGJHB?vu`$0YbCq4Y6D;@-sP=f=;yT*-)#Q^aL zf)4;%a)0`d;g4$0rxl||OSoKLEnh(ifct7fWq~8g{s&D!@SLL z;=FqrCt7Rmvn82qYnq{=np!7|4jgNZwQCazB47c`E)MRXVn#DYwZ&!S1ikfq zh9M4}Ep3(nb9JB=+vE+F5wXo94ROn2M7jN)ZPkoap914HE20+rc#Ci`tovxgl{QX$nsXxVB73pu$H zZn$$ctn!N1_8wriJvl|`SDoR#=#($ficmJ*332|$#^;%aKhUePinIuKzl7<}EmD?C z5<6S3_>aw%l+2y&rSex>3(lt6k2eSUv18_o0uaiPFkvWp5-TD^p&#c)V6_GxllicVgFl7;Q_@=rNd*%Nlzy}r8p@X<-BDfgi^ z6kFh9LC=CH|01=vtUO+MCw+q7cK6RoJ**}vB?8a%(L zLNi{BHQJ_#ZcTM!OSfHKe6k$iAPjNTK>^2|g9w5&OJwH-VO8hing5}^1wgn=_wk7@ z`7Ju*R-#EmHI1pp%$Cl|rC;+#ml>o_uSrUSFC$_pt$N~OO4-f2ZvQ4nk7%G&uE4o` zO6yVq>lXY&TSh2S;s;-Ueu7MC36!|gdOGAu0>~>4DI^B84k5F!_#4$1rcNiLqr>x0 zsrLVCToQM?~-jf3^h@Vy8picXn?eV%dymmkIH+^mP2!U`~=2yV$7TrDg1S&I^f4hC9VT1osOe7yg9F zPtB9j9N|XE!)6?K{GUOiOGWbkZ>dF4fU(a>X7h~uV>)6;_j z0i?AadHt-)bxi_^>6B82Q*HP{2j-<`&|_hMAQ^Uz9nie9U_=eMeLF{@nU9VVFv3T| z7bOTu@B-cs~dGDm0X*5Vg?*oqP+l-wyhMTv*y)44p~S`q+)$;f3d-sypo5 zA@5Gdbk0nrC?|NP#qGR}WjHUeo9mzR%G)%vf!au#eg8Fo!#2)M)+aM4E{F2e+{4Jx z2jX5#q=QA{G>dQ$Gvz=RK8&8C8_ARG+&m#n=n-kM)wW+KS9Ew?YhJSmjpGQ`hZCB3FPuiNnw_+KQKG2( zLpiUlX@os6WHlQj6PLZ^IPg>c3JXO z;UW?B=|Epfke|b~T2otG-wl?w!jjn>wO*OvY|jx z_#_qMSP?anQ$(U};#!0J-{NAAp27#Qz`UA`3Z{92$qjX32@OSG^;#=?I0PxuOFsuR z4mYH}O%4#pp#plL46{%k9bGS;&eu@3y;(7PO9zkSSepW!(k>&dG7!x!S3T@i)u{eu zgS;T^rb?)&5AZ>yxl6>}+&re1QmZGg;v;-lixv}CVzGPd3WzO##89jhWC8#zxwPix z7wD&+cLHVo?$zM+DcE>V0sTz-oEEe(lOq8Fn>%BqA+!|Uj+r5aGRjoi5?tDVlOPyE z#_;D@3qE(w40%xCV8&>3X8IJMH(^BV84ST(x5+S50vdrrVMb7!RpH~<`xBp^n;9`e zqGbz&Mh*8r9){sh^yHe-)ll#S;Ww!(6%1>tP|;n#$PTgk<+D>U=hSE4pBt#I5+& zn1K0N*tP%!OnZcMoc2OmtDIRWiuEN+AK7yT28>>5?W#CPT0qBl2HC^Bt1QvPbS(sG zYKMy9+G4A(xggC^zHl3g%0Ufvp&aeMaU~Z~ILZS)22Wk)AIoR0rC1J ziyG*ltCa>&r8$CkZY*fh$T&6QIX=12u$N6BGht*|$gAoCF=@CEOd(8#F`tSpu=?kOOTy5ne&eg~AXSagjBD$uPY`gz=@Leo9IE1Ib4 z_4xq)@W=er!40);gCxsgPjqr~QJ2;$ZI*uXB{LhF)9Ko=9^?`aV{bWTjSN|11Q`YshDgYq^$cHyS!{sCnHT{b8UA1~HnC zx@X0)baWX_vIkvoiP`f)kv(!MQl<#HS$!tL`IASYGT?c=*djET>ArL2c`w<}5PyFvI=7dy1!_eTQ zptB3!50t;y=JDV7-*mW>hFEbk^#!CvrD3zlXS-)h^&l0Q_OFh!b$8pu&xl6i&Ua6X zIKfs(Xry15X335abP3*0e5?0mOtRQhGI#&9~r6)j1cl{E3XoMwqD_ro_^Zs__s zKl1pEL0y6ps$w9GD*!QqHd5u84vu~Ahzc1QoR_6yXh2!N`ENr5rM*lnAa7f&E>@4c zUto2!PLF|`+aMHRWOAj-r(N2W9lIcGi3>CNIe@fYCtzS}?bV#sl4#=+V`F@6VdN`W zXYoHkAG8KRSKxe5an68b{~H`BId?aPH_D zgWrTlUGgnke(mKMFCvQC#|zk6uEifZj{G45UJH$skrCD-J_wz5sYg%XcSQsR2N6VS zO2=s(#<{+L1&dy^crMmreMH~#v-AYCY#hi%P#`a^s<6)j$YfLy{%mHiJha>85tzaR zrnI9UM>PQYC9uT;RC^pg3lkuYrH$Og- z5I=;t#~AnrKT+bkR>PRdr|?b?<28k9AQJI*H1Dc8%3nD}>oW`5oZ!9-U8w4Mr_lly z0@#50I4E~9EYH>09{wonu?n5G$v+bJwLNpNi`7N z)rf{76541K9iiT}haj?D!8VjZ;lzh43nwps=-h=}n+#QbbP^TfnNah$Z;{~PljyE6 ze7+XaK4F6oXJ*=@#bXE;&!lGiYr)m28DRy2lI>ky7garxM&w00C?X?;BpWt)Yx{OC zV){rxXdTmM89;{f5H-I{(2Zz-cEYd#00H8ZuNM5a>vVyDDFAT`{hl3IR*xWcuwG6| zha@RvDFAr)U26X(^@Dj;H*hFI-NiYI!Q|XPW1a+Y0V9RW9Fy9nwt1xq0 zOQ+Nu2vXo&80$qX7MFmO1?u*QkZa0i6+q;n2n}V@dgncTQiBehm$=HyOVnMfCgy6jb^6tEslYO8($6}C_QW|Y7D`L+X!lP?sG#cTXxII zTKZGpcn!2Ij#=e1ZOgI1V$66>-m(09Gy66ppO~D^3|tfM8P=o zVXoPm;zE`r%c;tyF&{4rf?Ao**`;@7$J?j~pYt9><-A=PrsF6Km54nim=C_wHAITQ z**DcQm+lnoHHG`T$VN?bRa79UYp8?eQHqIv$-C@S!Iv>E?vu(=YT#86OSAwjIs_Ssn6pjVd zD?bh)%m3dI1Seb?5?$oYouJ#Hxk{GKq`~~%QeNJHMDd_9T>H#@f|*dt1I~7juo{Jd zidfpQ_?ojCbCyy)S+3BO=od=jx+dg%-1zc!1&v?s%qM)d*NR;zz@QNesO7PrgA?Ui zUU0z_wl z(8cs!x`|$@V%rO8=~!r@rRQ{iGv)q|`(%|P`^cyrBhErQqTCVpPiZ$#H=DZ@$nSVy zse|QU2W&YXxUL^=xpWh!(B4<`^&+mt^=Qs^ssXSXMLAvUJp1(rnVbVdj3L8`b#QngG{-F)$ zrM8qQXhPD2pmGMHq36}00oPdONo;f9AW|{^ALY|Cbwu2yg$~pzCzDWnBIE;_vW@^& z@pI>Cp#)I8vAx3G5HZJl4 zFj?S!@N)O^oLQ78rRCSVDuRrtKGu+ zfOC3Dx&)|ohnV)oAognTg0!?@;#f3wS|XL$3R!{X1+Uz89(12LYCyTa4HiLl8X#sh ze0qGhF*HwJZ7~}4&!2{9uOS8mWd5Z+mm#1&1Sl{V{$l+lx{uDND)lAkANKqNu$kz5 zW-%NbTlL407tgKFHMuQkfL}GkyxNBR#>W#XPA{R-)h@D8w5NI~Hz>n62?d2YNmXtI zQ<+|=;W?-LUV6AG?Ct%!7C10!$2^%g`e21b!R8CN^;`Y~Y}i}c04bdt$}1o%iCR^~ zIU`e6BF9c=p8Zp4T%KEJC`jyrGP%{-3FjJZR;zWmf<;XyVM;InZC?X=$ZXyh$02+b z+X?04t(0BP@L8RNHBl^o6FT^D#2z?xVv+xRn=KsQTZyfT@fyH?qp82m=gZ!e?89>p zBci=`fJtIW@bVp62CYP&J>|C0+Xfc;ZjugrAm>uJu_&mg0rE(VGozv{?5wESchQ3Q z(Zj$IVCdJ;H8VHUD5)Hrg3ltKTaA)!TyWdS-7c6I@|GdE`-44HsMp}^@8 z4R0waRX~oFf{@hoay>x6+;o_e%FJb=mbF19G9;thS8K~KrdwdP=E0)kr_{Lqaotp& z8UpexM~{R+wW*)Bw5zFC1m0}dh%Es~js)E{o8Q!Gn*SAugN1lIbD34cmYAW{A%ixz z1R|)|*rx$vP8Qeo;{+0sy7?=R`S>gl$m0eK45AQ$pe zZhlD3Q7Qr+U|U2KjBzsRf65U1P-ATS2vfhGjdYJfDUdM{9o?XdvP9ote_(}gcWUi; zhUB^Cjsf*_0;rubXmbIxv+L9RF0ZG;V%nlWy`|H$rSxn`A&7j_t6mrp-br@qCV3v$ zf}&LI`?={Gd1aAdXzWM)+8Da26jl)b_`Zi4vil$eSe!>Xh?cYoQzVIC4jBW^s#o^+ z6`r9dPA;&;nmxKpt$_s#Od2<=~wS8P|YSqwPta3K=vl5u=d9X0%v( zMwG6&v!J0+V)i7h(p)83m-DQnTiI{jWi`crK7D|5#W>!Q?b6+sKRzFPhE5pubG#09 z8V(MA@Mec<5*;)5g0*k+;PF;ujLvt~ECQd{V|T;kSIJiRA3!k5=T)nCYSfuV2Uj7T zbCQSW7C;&q%OzkMRp4A<_4#X7Rpluo4?P@>C`3Emof)RbC$ z3Wr#V#qvp?bo&!@9svPbTGYO`9;x(ph!yVN?x{M`$4<}vAazZq&bjpr*yfW<%ISb) z4pM~`0Qfs5!m;Y1VagQ+zCZ7+Z+n~+HIIqy+v>8UXD`2i;?|vt=QSEp?~jZ!x>&{m ziUPqztdoGKnTqfWkFvEiOD*?B`k_jTW%?E71B*@M;@vnVfvLlGuN^48V4|zJV{rE! zmZxqx7UlpnZL=HHRivyMYiVvv>aMc7Laj1n`THetXcyFazYX3TX=7_q5}sU0$_1$9 zZai|!cW|4VH0MPPU+IGgQ37lvT`X&zh(zv{ZCBy#6xp5YL7*Mx!v9)`&Y>#9(i%;- z4C}lDiAPg`x=$jy5V3y?qOe;Z@}nYoo~*D_$-*u_np3Vg|qT!5B%XVrU8}xPSD)QsZ;-~o}#b$$J zJ>ueBaKwL6U^qltF=%p*I5I|A9wy{MO@Y}|@0ht}I+RQ4F^XSOQyj-!ZL~lP*uz|U zfo}kb6LHzb%LOPz=LUO4nY(RH3^r=smLra-5(A2}tgLDH?|@4=aJ(8S+})NBNI zRG>?~d2KK9XK><+ya(|NlH5pU0;g&D6VUJ!J)Y{EZ#BM1&2Ng!T z%8l$cOi3LOqkh-#8_;6C1x>xl?sb=_v{VAK?2XE)b4^4<#Z@$Pits4xfxF(Z9c!sI zA4)UifbE8rNPnz#ogR=rCE($kO;%smJj&5#=w3gylrQ4_QU7*>a!1EFsu;3l-lcnJ z`_W}LBGp{Ff2`i$z0jCwcLN?urYSbc1JN6s`)6?7uk#vWCXJ8#qk|Yev0>IAWiJ%} zvTDa&U%S#C)qpyfeZ)f6vnO+Zu3m@iATwTRls|;2{#BbfnNWQ>Ajvl4Dd89USf^YD zr{bhX4~BJhFX^6klf?jC!FKzeL!Xqnc)3)m zFy;6SLg{_m-D0P4ss@`gXIV6}B2*4IxJ@u=vf1?`tEZ=EI_y|fO{_bVcG)L3k)L*; z?5gaxZ95-Ku^xEWLaw+4?Fp!*JS5H=TvW^0waev{_u<aV@2|mnvv#0(cl_Au_=OPHqe8FmaimH=R5Cj9dM-CI9^Lw;5IIo? zN+4Inb87+rJp%v4hyv-#Bre-I@hmI9ltt3^=2z-0dDe^t{>ibgPly4n#7C;HPd{VC z5iO?qkE!eu$5CgRnNutO;fd`7^VJWe!UU)3VAKbE>$eRfiqOrPI#~UwWHpz&= z>~3AdyOY#(8!Tp^dSC)}vX7#T@|ABp?_e4J{h~>hKGC8?w=LP6S zq~;E!VH)Q6;yxT$nmwhrd~uvr>bR)pHp+*uWkds}IwvHw2eUYcywC2k*ZRgt!G~=l zJ#Sv>EZF-b$E;n`mzc{P_GKIzu2EvPk?cd;nwV;l9DX~kYJRn^Y73%bp!G9XQ4xx0 zjNkVmtH?DNbjZuaQz+-ZhJ=N0JJMoOZ6Q5wV#63}P>&VRyBmW^g`IAJJTKbXGs3wm z8sLc5X8+mOT2KL2epL0`y9@7TXZ*BhN|fZlE~lAF*KF7v4oo*G`~7!>6V#+3Ji(OQG3pIWh?D&I|Ap6T#9Jltgt`}>h$dzd;+-Orwc%T&O z3GTiHw`rX_DcDJKprIZTE$Ko>FCANG+tZHNGa419R=hHNTf|B8wSxyWgFJaUAy873 z(2& Date: Tue, 27 Jan 2026 17:22:59 +0100 Subject: [PATCH 15/49] es 17 --- TPSI/viviani_giorgio/html/Viviani_es17.html | 212 ++++++++++++++++++++ TPSI/viviani_giorgio/html/logo_agnelli.png | Bin 0 -> 12823 bytes 2 files changed, 212 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_es17.html create mode 100644 TPSI/viviani_giorgio/html/logo_agnelli.png diff --git a/TPSI/viviani_giorgio/html/Viviani_es17.html b/TPSI/viviani_giorgio/html/Viviani_es17.html new file mode 100644 index 00000000..969aea52 --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_es17.html @@ -0,0 +1,212 @@ + + + + + + Document + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Immagine logo Agnelli +

+

+ ISTITUTO INTERNAZIONALE +
+ + EDOARDO AGNELLI di Torino + +
+

+

+ Tel. 011/6198311 - Fax 011/6198421
+ E-mail: agnelli@agnelli.it + - + Sito web: www.agnelli.it +
+ CODICE FISCALE: 00493420012 +

+ +
+

+ Istituto Tecnico +
+ Tecnologico
+
+ 10135 TORINO +
+ Corso Unione Sovietica, 312 +

+
+

+ Liceo Scientifico +
+ 10135 TORINO +
+ Corso Unione Sovietica, 312 +

+
+

+ CONVENZIONE PERCORSI PER LE +
+ COMPETENZE TRASVERSALI E PER +
+ L'ORIENTAMENTO (PCTO) +
+

+
+

+

Prot.N°

+

+
+ + +

+ + Tra + +

+
+

+ l'Istituto Internazionale “EDOARDO AGNELLI”, con sede in Torino, C.so
+ Unione Sovietica 312
, C.F. 00493420012, Tel. 0116198311, d'ora in poi
+ denominato "Istituzione scolastica”, rappresentato da Prof. Giovanni Bosco
+ nato a Poirino (TO) il 14/04/1962, codice fiscale BSCGNN62D146777N,
+ e
+

+
+ l'Azienda …………………………..….………, con sede in ………………………….
+ …………….……- P.IVA …………………………tel. ………………., d'ora in poi
+ denominato “Soggetto ospitante”, rappresentato dal Direttore
+ Operativo……………………………..nato a..……………….il ………………., codice
+ fiscale ……………………………..nella sua qualità di Legale Rappresentante. + +
+

+ Premesso che + - ai sensi dell'art. 1 D. Lgs. 77/05, l'alternanza costituisce una modalità di
+ realizzazione dei corsi nel secondo ciclo del sistema d'istruzione e formazione,
+

+
+

+ 1 +

+
+ + + + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/logo_agnelli.png b/TPSI/viviani_giorgio/html/logo_agnelli.png new file mode 100644 index 0000000000000000000000000000000000000000..9fb8f83252435636cd5dc589819493fc5a78dbcc GIT binary patch literal 12823 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 literal 0 HcmV?d00001 From cc1fb41262a5e5a952e27e62d22057d911f401ea Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 27 Jan 2026 17:23:32 +0100 Subject: [PATCH 16/49] Delete TPSI/viviani_giorgio/html/logo_agnelli.png --- TPSI/viviani_giorgio/html/logo_agnelli.png | Bin 12823 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 TPSI/viviani_giorgio/html/logo_agnelli.png diff --git a/TPSI/viviani_giorgio/html/logo_agnelli.png b/TPSI/viviani_giorgio/html/logo_agnelli.png deleted file mode 100644 index 9fb8f83252435636cd5dc589819493fc5a78dbcc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12823 zcmb7rWmME%`0daQLyvR`A|28xEmG1QBPrco@&ZZ=(j|?QNJ=B!9fE{_(#_Cu5C3)V zm;2$ab$@FSYu3z}6Z_eFKhHVmgSx5$9ySFw1OmZRQj~oIfgsU=|J^as!SAQLhcn<0 zmb0S18w7&i{rH3QnGK&3yol>Ar{`|(WNiyKx7UO4333mh{P6t0Ue|~4@Cz4`RgL|h z*WKW*mX?kXOIdXe9#Un4JP3piq9iM=OD%Q{NXPp7@qmzaN_(D~h2kSo&N} zO6UEWTnI~49)nTRCZ~~+i_gbFhS0T8WZmhgXAIci-3Tkq6lJ9to|$9$DJo*>_lxi$ z?uFddygbHUkG=iwa&vPv&64(YXJ@BSRX0n-azKKQ5WWTu+3#XUAh)S)mf3`0TfyfTCaeNwMx5F!uZXe3Wj=WG6>u^{Br%|z8=0oxgD?^BiBpddPd*(XkCA8~hxqml42oOej> zJka1$L&-ZAHYQZJcfe zHS|iNH+>!g%ue3+_>?JNabQzk;m%Ctca-aQG_1^ucQSrT!5GfKC^tY8yBFfN#D>xw zye9W^K_J~fY0Q%_P7LwuCY0At+x$RLVeMGsBT<0QnZ^%uCMXMa zZdKD?xynrm+;?Pa+)v(>M@1qGzlW(!{5u`Hf}y;p=xRsCq-)MNCW}flu@-c0WI829j;}J!E}g6C5i98`%fR`kRbGZ$Zi#e zFM`3iuil~Hzd3dHs~7;v(&FGV_th?fta=#_2b+4=r?l(oj0#&ma`KahO`aU+2o#N! zt=JB!nGMAmwD|tftd9BW7mWTzs%TcjbbhGSo%8kuH9i}JW``!0fk8FytlJH357~PR zJJ@UN{guZ4AKy{oH>KqG|15^VwivnNg8 zjf|K{4PH(Xh1ZHIPo<6Yw|@lAgj~Mn<<0DkSU&liGE>$e$UWZShlDyFpKq=99ahQ8 zPIgGrW^V5P8ga57*HJSz>&SS2Zn)xSu{kz1KGTtlKEV>)%~gKs@o=*eQqFFfy;D@H z)!qTe6>Ks9SzHi@{PBH17g`~ z7h0-0gNVnFHe(ktpdO33y9p?3_KxoA)bkOB=L8Pw?auC;+z~F+YRp!ZC}#EL&Ec@z3{zoWM<|)-zkfxmONnZqn4A4mXj?R`tzQwswHoZWlkN54md`8;pw$mwTm2y;vdG0j{(mKQZ?0R8(+ZG(1=z^ z`#C?5sMRp|s@HQrFMdVcCI>iI;2fF8Dsjqk0|FN;ZEqAl_ z@R=dB(}W;J$56=8igR>ZuQ_wqdvU>ID9hri?7RFy}I(?S(RFb9V#{U^yzVn>iWNt<}yn7%)dw(E~^9&sb+uhUWY z7W;~gGRjRb=cC?cS+FO zPsJdaqoy(0P~}FyI{sylpCg$gKkaD+dQndTV@LW6|Gm1A@0JIW?D_KAIb7v~udd^# z3q2ww)&eQAc~-ZJcO3~(=oT{^7IzNbga$oiWO{oYjuu}={D-r27z`PAuk6PY9Jes` zqCt7iHZW~54D-eK{enLuhJ6h|VRpW!G_^32G38W^q^%<|!jjDC@$Z6#K=L)7?ym32 zsjY$k2t~l*%{Aifn_Nq(W;;?uycj(u|A?e36O>%xf`Kow@?lk4qT$nbURMt>2a23G z?W=unqj@%A_21&FsZ9jfQBlb#1 z^I7=qy63aJcm>{(!EwlW&o9>tz99;x5zJ>ha(wOv@bjK&;)c@ng=_m^EhjsWpN z_nKJ|1na%qQ>J%kiPw4+W_7&h|1uUXIv1O+zM@=j5dU>yaBUr#t+-yf!lO*GYQJw+kw~pbQ@!ha}$CsHfm(4 zv9X)%T`!AJMH@F2NXWAl6g`itutx5$!!Kz}ofWuxUkx`lRKr1LRn)E2YWn5e7eR~s za2fGC{nO7PmDBkNwL(^(zKkcLm)= z#g*zdIvSUj-ltvhW(-Ky_T-(QG2A)vCQKfTie}jwprR!lrHN=8$I``fU!7^v3I9qf zk~5=geHIe3;6Wtg%KO4B=;)yN{+Nmm+fYMo{ljwWj0izgj~fc4|2QLg9J=eg7B)qk zEowD9zA0bGNr%ZqC*rZDIUP9|bWHR4^Ta1qpbW}Ug;$#l3~fQ0#dadcZ{m~XmFa4; zHN`vXASZK!TVG^scj4mEPrCYqu&|N;4b!KT9Yn?!We-&}oUp21Bl27SAh;c=XxAyx z(6Wn%5Oi&|l!BAko?fV^kU7(_KB5-5AO}8Gu5Yu&5SfI0Mz;8NRT;W2`NaBYVXfA$ zBjs0OT$A|tMTk&eOnlGl9Z$KywtK8#k;q-aqur`2*h=G_r$p}y!KLm#A^mRI?1Es|D-nHd+E%SiO{HGBGyp&uXnNBbFxOD3#YtQdcrMykE>DlOeGoTo*_ zIOVaE{gU^mmcoi}-v!Zuavc_z%EBJq+n2~(iXd6@X<;3swf~LTa{ZikSG=%rTGT~B z3c~GHbaTDp%l0iul6JTI4`ewoqv&&;kY{w9##C{f+hqU;g9$mjgRA}7RBiu&%bof3 z+M1k%ypr61)_l<-(e;p%VvS#;S+(@7qTO6;{}Vmd zpW7bo!zsuW2L`?pn13S18obmAdvWWwc}eng&XjQr$i;ezp*oArG)){sG(A( zzTzSkj!T!R?@|~QE@3ZpD-(=QYITvG1Y2je61`q~o@TS`W2Os9B&!)tneCF-k?gv6 z(o&EsvHP2qQZHS7tk*fJixZ9O4J$U7YijlONX)Ot=WZs~ZhgL2p3CaN@QlT?inZA; zy10YG{*`D9x>Df>kac-1r6o&OI!z%TaSN>vY zjIEYlpo}9pOh@~!doNZ{4%^kndb7BvUhX+Of!VB5g?`{dm48A zaxl${f;yWibnm~UE7|R2AtC%jTec;}3NF}m(z#LN?-n&kz0rzhUgP@-Zc*h`BrHVzka;DMksJ zy2qCI?`j)Dyoj^k9bPLl*+l=8R6X076`;>h(I?M2A5JCxV|V0gInT+|BrLvWY-VfT zANsVV1{VS<2J=`=>rZjrA0JdNC)b zly5SJ6n`#P-4dJUFuyQt+-(iI{KuE&T77+*5|ub9RrEA zT;x)tttNgd*)kcee&UpJCOCQ(?pZ8qC#TvySJ>;#n}2cib_--`;D5_o!_|-n)>1L+vU{(h|?(5&S$$9LdU{5$XOX)E*d$Q z_(dM!*{JbbKRx&K{vw(~X}|v6Ow3A|Uv%}dr|uI*B@Rp1_=()Xk`w=54b8vd<0Y<% zQq2u)ZM7;+p;X+1-xd8;9HUt%_m}VEwE66kHc1aE8~>mOIKuz7$|inD{^8B=R8HKV zm@uL%I-z1B6wN>O`oC-%dZ`2Tvl3!iS^64p9;|?g$a)$a+TaG16aGL12Al5AsT@lD zk?EZ$RY!^W|6V=_{&@Sp*-4W{TZU1PB#1Bp9+CKCOasS}c_6r5>p^~lz zr$Ju+M@ZZjVVdzD#YH3D&u%XTiVCNd9lCGj9!em09R1?3c{%bzGggIQF z|An{6K(}^px{3WiQY=&Ds!+Zup@4=;aoU_+vs`@65><+ygHKZo#Zm*^#=`m{U+(p_ zwUQpc@3u4*9~adEj=+%>uW_xemP+CDFLx5VD%dnp50uz`Dm!eoFf>T1U|1O$wGQ85 z2?;4U%;XMHJEpa&xrVEcspI5U8iO`5vFLl&8(pp`4UJ`>!RUDX#R(>sWh_6tY^gJg zEBW9BjKAul)HF`}85cBvw?QeDMJUu-PO#G)B3pYpq^{?GyG9+3H3tRV)hHrB!EN%e z<@&1|R+J=nn$4_h7y4?@LyB63ZVB2rFgHAHe_|5M16EBRPR0#tmmGC10VSAF(b^eL-1T zKXd0rt=KFf&#!k>nOx9Kp(4W>`4s(R{U+s`0F<(|OvI3VW3Jzd(R_oAhbNn~K2&P3 z@63IyEBzby=C>a0rB-QZa39U-9)=P$>1P5@G0pbXrfpOqDVt4+=U%F392b95(LY+> zND2RCnEJ;}6h%zGCN+r4xBfUcg`wo^A^VBYd*A1pP#f%kMFH1~?}6e^`VUqPf0Y_e z74bjcUdcK07hKx7M(KqW;!$iY=2<#b>c`TJ+n2DUP1Kft&BBVdZF%CbAauvgp@J{Dn#7(i03-K`Q57d@ROaqyab*d{r!c%<;85SuE8=9mwIEUs6q}= zVy%$SRbhf$t~kLh@hY<0fW#EWWVT-0JExlM8Xvov!MoFA4F793rtr67mh)OszH~gH@Ya75%ZqFu9f9qDG~FudzcBKNCmqRW{{_*@ z6B9Mdrz%UcJ<9~ENrRv!GifMsR2GK`F|-OUpF)9lCVx%~bgl4!Qne zCb^OpU8eSwlgsbC2GkPp@ES2MZ`W!Ib*FJMsptfTU%Jcwns>ad*UyixcLy7r1`CzX zJ`F8R{o9DY?@ipr@;ck?>oYQ>5|XM{cH2bWUrcmdKVP)f|5<6Qs`eSeny;z3oj+Yl z%u&zIrJGzV_l76{6}J+r_VYMIrEesAq;F@l^cgD-;B=Mm94xKeTFS z_Z{yMrNNk#Ap{EbIbM~UrLV>?a%a{}^w{2sm#25{ zp7Q?ldEfPw*P9y=*iw-Zy+Cq+9(Mc028XVpZoG9(%U$xn~ z`})|{YSH2^gL`B0vt$t7B>c`QDV%SycF{bWsiVlbdJC0PE(`4b;|VV*d3JWNl%eK2 z_N&HjT`g#$idH|z?>pT^2Z7{mu(;nj47nsZRm9_~DiRYB(aTremP3~$D6JsZ%+TOM zkcHCGiHT8te({%CS6)vKM*BA{;AYDJ@$3_Vh~gD(r`Jm1LzyDjiJ>@3?m>ScpF4{Y z_M_{MS^2kko-*xBeuU{bN)T?x{58U#^99%+i1WKJmPko2U_!WP<8?($1+>h%2*E@> zqpLgL&s=n*jQ`*RdH#_#Ph;I;lo?wXos^4oP0w3X8Bhq@RbfY86LKUXs`zdimM*6b1@9uKHhLuLG)oqghdCH1*P|N=lt`j+vEs z6#ST8%RVeHc>mB)*U8@@mz`-=?p`zAwD_c?Fbo=RNKx7S7c^;5d3&dBVDRynlfA3` z_C)!uwKY7wclcdkpu{rx4zb&#E}NyM7df~PMP=o#WDdily_zuwZf>ZLkB|4wegjXy zwR?9@kNI4s@uf~%exJ4l96r(P<#e_?M}Wl36|;6%ySRUOy<3%#oQ&SQgf9(+5)p+? zmB zk`f;u{5W7NEUY(~beJV2C69xS|MZE$xayaEZ?5!vZu@!e)Yr_Ip>$adwY4NU0q0Nd zZ%@@&IYmS$;Jwk(i}enLu0Cg2bXOtF#3PY~MUz%`ZEL%G;IA4v=XU5{qtNx590lBccG!B6~?MrMECqTHsA;AvFsk}oPcnXR$ucC zZGxne2*15~o=jmk^mlWWaw}~C+UREZ5h#U)g&&1zdSUhglob3n!G1>G@{utyXmH#J zeCnT{o+@*DADKl{yuj8eBTeBl?LAm(KE6F2Ti-6uNv4pMllyOISp%SVa&mIjStvdy zCk`-?oCqBE>C>lr)fQ;keh0#+QO%Kq-+tM@QG+9o7pvufYGZMAz>R10 z6Fzim%SBB~E338qIElyE+{0{2eyW^I_u>U#KrG1z)4WjM}$Ll)!)71%+0U-i# z6^?>|-|@#;@emu1o0gV#+5T`N$;83}@79(yd&Jsd>qY$M&uAT2jy%2J9G67)mYT`c z#1SM6mDlwm&a04QPGb;X*xTul)!VC6y+&tx-;0Bo*4u4U;cwv?n)f zIBkw4MSYgVWNB$_bJ_&?@(ERpF&TRtYcj7v@bpBHAFoAmy)u=OhK?5~5i>C}TioAX zZOv8DS_rrP2D3a-?_fwJ?27v9*DuA_ucvRX8)b%R0jTj^Q@-%R;E(t!&I$a;1MkgE zv9AltmydDo!V?7hev;h_b?S2$^Ey;>rRPL)6EZ1O>^-xlFnrVUuFwi#LCgTC=G%iL9ow#~Ms}6IjWR(XgdUG)0XDHP zF{J>@{Bag?KKLz6LPnPN?HiO$w^Fv*b011c8Pyd*pe$}t^DEkOf8mSEdT*oiALRSX zbpp`SwLaP)S$}^q5wC-2AY^7MGakOu($ZVMfBa9R4iCSk5^+}~vQbh}0>P<^nFA2W z^z`YMmKLh*?QOuWy;rB3)!xSzuQLSj9$^RCW5=qebZkW8FsPMsbmYXR76}83y0_d) zSzTQX6R=O+(f3&~=tf>!9}slSk;oRmG2J~oR9hsznTHy=0Bca|ut-K0C3n1vDlG*F zWxUDb9hI0j6o3m=DkhC5JYONs;%6AvH$C>pDIy{!F0A@0Nr;M+!f71Z^+z4|L-%Rw zh}G+Cu_s(R)077*?X-`*|M>A|y~E=84>#)(kvM8mvPXrFr+>8e_GYhOG?sCOibvt`Tv;C-<>SPq4C|K z-@qSA?q zQbO==B3!$TK;WsVeni6`n$9twfGTACk0j9B%-0=>`5E30?VEbj7>LF&9K)#4l*&87zd-;1KV zED8apkUf@e3=y*q2pG5jQ749w&k56>XY(`+29J!6mi6{-Ov>R2pDEJ?=%nFJdmZ`V zgS5Ij6#r^f%GBSbHY}$F|I3#zFmYf0N0!SH^~!5()O$s2`@6Avy2Pm3a)_+f{udFD z{NNr7X%LWscL-f=eFiYSFWuew1soO%O5z$K5k#m+6^0GrS37y;y^3B*DJd+4g7)+3 zE=E#PkjF@9(kJfR2IT<#SUgDk=ts@}QM8)T~3A_tVe_0*v3kH{N{&XEe^y`7-XF`$IN|Y(OLMUfgoMYGfR8PB5)P z*B6IzvDBgr%*^t3>Xm}J~+h2f2VfS6Uy6M+mBJEpZGoLsk)em`>8ZtK*{%xF?jB8EKb;uo2S!J5)X z76jNPjhVKqTRZNfRgjep+sKx)??3T}Wa-lM!DNb6v$(B>VZewHJmcVyGclo=E!Rg0 zmcYMQ_Tw_BwfW+kb4J%Lc|u=A7ayOb792^7^?*YsO_w9c%E}bY--bFzGA5xcQ5oQE z<_o3Gro;SZP?5@SO9X7G%gKfka93#WX3IN0=8Pi-5?Pe_2q6JWVEzlLzSCjC#Jste z{SL)h;~JQlm{ungX#eJ$3uKTY_5jBN(uxcXMJ^~RvN&Gr;m#OoJRKEv8RBRtq4=1& zw`UIkmTx(f4B3*~2gIdQVesGS<`|=NTX8CGR8J_qOgJe1wO4$C5dDX?YCrFrK+C4U zo(~+*qfp_~N<=3mk?`A2%FbZQT?+A-0{<*=wLv_b$|K_;p=UV;p+5b{}{)^igqB)N`x81ni5)w4%frIsDpzW z$7C*&%4Yk$h=Vjc1Lo+>Dob|+t3c$@k+b{OIMSHdDXxk4AGEND2skjPjjkRzCcUsn zHZ*i1%XJ)%gfV}J}YCavIY?W+^|a@wb$y1 z;7WIY0%Nt^%<~>@r6@pGwKfyTq@<*8mQGJj#=l!Cmm4?hoC@(c_Q%uP%zvX#X4lV4 zQzJMDhu8cf`P<*Vx|Y-+*1lCW@R<$}#3L0TBO`afx&SP%*ddvrV8tFm-yMpE!~JfS z-Bz9*D97$xRmx~5EHMl-uI2vZp{uKl2b7qHvqZ@?i(Yre2rgqv(@h2E1l>QmscM?` zU~%?-&762zC@Zp+OyTGJ9!t76*uOPNT-) z`FTCLIa6r=y!~JjYpS@P0AQOijeL1}K0ab{PNNPWP1W!|d~5046fGH&Yo$PGy7jX>5i=V)`@i?zaslb~~PF(jE>TrNy;E=Jax7-3h{Q2|e zXRNFf?w@*L?}2Xz)A=Y9Z?Da)=$#%t@tbFRGBPrR#KiA!Z~Y-1|KX66oJ$L2;1ye% z&}9fXJip^&;o%`%YVweI^$HuH{{`CT78;OeKv8$@JP((tpFDYD7QI&yj!*skF9#c& z4DcTy;lS)wgy?8#H5o(Lh5ZM8C%BOF;oDSrpn-v6?O}4wrFLSXdb9_I0{0PV@AD?|Er`~^q2B-To5>Y?+GL#fgh5Bmas4dX=DgG zalQzC#1UYAHOaf$B;AeSG`>_mYkW@Aw&<-b8`fpoJz!rb1?<5=y&4j-F^I836d4B; z28#sq(}VNOWT-9R21-U2o?;rPU#M37%ijBBfW_th*5~uzn%nDie%sK;wCNF5#$HQL zhYEA@@)+1nT40dROTYqy(8$*;R-N1%0SwD+GfubtXpNY$*eBx7f4FUyNIeOqGh6Ha zAmn>i!i4F4Y0Y-em4k+dgCheJ)xyHUd3*9Hckefg9&9n-Cnt|h{g3~98);i-07yS1 zIvV$_(UM&&n7qjX2pkt^Tl}Dx5S7hhJ;!TiV&HqefB*iN)TE}uFhhe|TEvVRosmN6 zfX`48Py~rA4#W)Plw0%F`C7|Wx(#(e`#`&sP(xKjeaV*10x7%)+w9u?1Whw%Yl$*d zFs^>eJUVo*r%DxM+UWugk1G2-*(j1r6%fy(4eiwBs3HKY1ok5hcZi0R6cwewI3}m2 zv^5L03qe1hJ%9ev%8J<$Y`sL9iYDwYHgs83E1KF89zU!EJy1J<6H)r_Q21|^RaJX? zV<@$eBa1=$JKyBNCgAwHgy?PMvuDpbfHMS6JU%0X4UZgzG`G*mTZmK~jrg~~J73@k z89*Aq)pp77*g@cnZL!mN9<#_Fd&VE z637DxK_CT#$^{7b4-Lz{I3R_1{6@g}^q9zCP9Mt)sOacMMDqY>yn>C*GvM{Y02|KR3s8ys zl5n-(@=^#ovTw8Zyz?sbuaZDwY75h0Lxedt#|V5eY;8Iq7+R=BqVdDMyjdB*fvCen zF`NUJSX9!(B>NLm96K2f z%xx$0vYp|PmO1F@k=Fa-Qi|dj!IA+R<9~bH*FQ2M7Z})Pkq-fRWZgU6-)>{#Ur*$^ zHz(SIf`Dc+@bPJCu<&3at7HxBTf*|cXaNcvud!Bx@Ye{tZYbVfuEznr?ew6y&S) zfSCsd1|HjJyZT2tz&rbv_fIdSQ}?4c>a_=<`{|33udm2LgVUjFvN9Bv-)0;FLaGx? z4-=!12K1QA9fYHNG%V!o%$-%Gc80Jx5~u-by(q+38CdtnV!&vYDBA%e92az~XSb?7 z7O^`A-yF^Q^!){>^8hzhWnn`IgOxlpHBpd;as#DgH*KSWZ2LlZ|Jkou%q0N}^Jw=z z`Y~Z5KjOU7xY^?G;O9%wmRZ9h@I@0q$D=6)Re7fC_1IH+EwNRz#XbOAzYdsrlFx3s zgb<`Goc~p*gFvwwP7N_`_B022G#StN>=`CVQM(-)mWmn`s72f#iQpJ`WpL;sFp;c^ znTg2^WUc8n^7dvY z?VvgaMdihu3U!KSIN^m@OH|0S2T@=03*WwDOm=Em)Bx(#(IHhjF*L?8#`SYfIaX}M z_z8o-+}DeAS)(OzuHi{OC~bm#xU~3bdyc`8CDK8ae)r6aBbO6D8Zc8|C4=k%{(##D zW`sYYO)L-cU5|YdYPw5EEE{ zzPRFtI?g4i1Ujg8FF~aYw6q}L;EbGH2RKE@)egbHj~9)dDmJd_h>K>*$nx9|rV;Na z^v##A9k9@YVZmhj!36`Xol3}wR>g^{^;jei(Q|tG>tuz;TL!tR>RxEzdP3)mxLqGZ p6mUVouJ`}@g2MmvX2SzP>}%m9MME({a7hEAB&RA{`O+-(e*r%2fkprT From e80bfc75143b1a953972ef594d6ab82302d11350 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 27 Jan 2026 17:23:49 +0100 Subject: [PATCH 17/49] img --- TPSI/viviani_giorgio/html/img/logo_agnelli.png | Bin 0 -> 12823 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 TPSI/viviani_giorgio/html/img/logo_agnelli.png diff --git a/TPSI/viviani_giorgio/html/img/logo_agnelli.png b/TPSI/viviani_giorgio/html/img/logo_agnelli.png new file mode 100644 index 0000000000000000000000000000000000000000..9fb8f83252435636cd5dc589819493fc5a78dbcc GIT binary patch literal 12823 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 literal 0 HcmV?d00001 From 47627ebd86612831e9d673988d9220e824bb7a06 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 3 Feb 2026 09:27:22 +0100 Subject: [PATCH 18/49] es 16 --- .../html/Viviani_Esercizio_16.html.html | 79 +++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_Esercizio_16.html.html diff --git a/TPSI/viviani_giorgio/html/Viviani_Esercizio_16.html.html b/TPSI/viviani_giorgio/html/Viviani_Esercizio_16.html.html new file mode 100644 index 00000000..f7323f8e --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_Esercizio_16.html.html @@ -0,0 +1,79 @@ + + + + + Es 16 + + + + + +
+

+

+

+

+ + +

+

+

+

+ +

Data di Nascita:


+

+ +
+ + +

+ +

+

+ +

+

+ +

Altezza:


+ +

+ +

+

+ +

Colore preferito:


+ +

+ +

+

+ + + +
+ + \ No newline at end of file From f849db355590c753dfa8a2c04872b939b9b0c439 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 3 Feb 2026 09:27:43 +0100 Subject: [PATCH 19/49] Delete TPSI/Viviani_Esercizio_16.html.html --- TPSI/Viviani_Esercizio_16.html.html | 79 ----------------------------- 1 file changed, 79 deletions(-) delete mode 100644 TPSI/Viviani_Esercizio_16.html.html diff --git a/TPSI/Viviani_Esercizio_16.html.html b/TPSI/Viviani_Esercizio_16.html.html deleted file mode 100644 index f7323f8e..00000000 --- a/TPSI/Viviani_Esercizio_16.html.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - Es 16 - - - - - -
-

-

-

-

- - -

-

-

-

- -

Data di Nascita:


-

- -
- - -

- -

-

- -

-

- -

Altezza:


- -

- -

-

- -

Colore preferito:


- -

- -

-

- - - -
- - \ No newline at end of file From 5f1814e6dfd050af0c93120830812c0c0b688909 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 17 Mar 2026 10:54:47 +0100 Subject: [PATCH 20/49] es 1-2-3-4 css --- .../html/Viviani_Esercizio_css_04.html | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html diff --git a/TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html b/TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html new file mode 100644 index 00000000..abd71fd5 --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html @@ -0,0 +1,69 @@ + + + + + + + + + Esercizio + + + + + + +

localhost

+

computer networking, localhost is a hostname that refers to the current computer used to access it. It is used to access the network services that are running on the host via the loopback network interface. Using the loopback interface bypasses any local network interface hardware.

+ +

Loopback

+

local loopback mechanism may be used to run a network service on a host without requiring a physical network interface, or without making the service accessible from the networks the computer may be connected to. For example, a locally installed website may be accessed from a Web browser by the URL http://localhost to display its home page. + The name localhost normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 loopback address ::1. +

+

Name resolution

+

IPv4 network standards reserve the entire address block 127.0.0.0/8 (more than 16 million addresses) for loopback purposes.[2] That means any packet sent to any of those addresses is looped back. The address 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are not supported by all operating systems. However, they can be used to set up multiple server applications on the host, all listening on the same port number. The IPv6 standard assigns only a single address for loopback: ::1. + The resolution of the name localhost to one or more IP addresses is normally configured by the following lines in the operating system's hosts file: + 127.0.0.1 localhost
+ ::1 localhost +

+ + +

The name may also be resolved by Domain Name System (DNS) servers, but queries for this name should be resolved locally, and should not be forwarded to remote name servers. + + In addition to the mapping of localhost to the loopback addresses (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) addresses and it is also possible to assign other, or additional, names to any loopback address. The mapping of localhost to addresses other than the designated loopback address range in the hosts file or in DNS is not guaranteed to have the desired effect, as applications may map the name internally. + + In the Domain Name System, the name localhost is reserved as a top-level domain name, originally set aside to avoid confusion with the hostname used for loopback purposes.[3] IETF standards prohibit domain name registrars from assigning the name localhost.

+ +

IETF standards

+

The name localhost is reserved for loopback purposes by RFC 6761 (Special-Use Domain Names),[4] which achieved the Proposed Standard maturity level in February 2013. The standard sets forth a number of special considerations governing the use of the name in the Domain Name System: +

+

An IPv4 or IPv6 address query for the name localhost must always resolve to the respective loopback address, which is specified in a separate standard. + Applications may resolve the name to a loopback address themselves, or pass it to the local name resolver mechanisms. + When a name resolver receives an address (A or AAAA) query for localhost, it should return the appropriate loopback addresses, and negative responses for any other requested record types. Queries for localhost should not be sent to caching name servers. + To avoid burdening the Domain Name System root servers with traffic, caching name servers should never request name server records for localhost, or forward resolution to authoritative name servers. + DNS registrars are precluded from delegating domain names in the top-level domain localhost. + When authoritative name servers receive queries for 'localhost' in spite of the provisions mentioned resolve them appropriately. + The IPv4 loopback addresses are reserved within the IPv4 address space by the IETF "Special Use IPv4 Addresses" standard (RFC 5735).[5] The reservation can be traced back to the November 1986 "Assigned Numbers" standard (RFC 990).

+ +

In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC 4291) reserves the single IPv6 loopback address ::1 within the IPv6 address space. The standard precludes the assignment of that address to any physical interface, as well as its use as the source or destination address in any packet sent to remote hosts. Any such packet that is erroneously transmitted is not supposed to be routed, and should be dropped by all routers or hosts that receive it. + +

Packet processing

+

The processing of any packet sent to a loopback address, is implemented in the link layer of the TCP/IP stack. Such packets are never passed to any network interface controller (NIC) or hardware device driver and must not appear outside of a computing system, or be routed by any router. This permits software testing and local services in the absence of any hardware network interfaces. + + Looped-back packets are distinguished from any other packets traversing the TCP/IP stack only by the special IP address they were addressed to. Thus, the services that ultimately receive them respond according to the specified destination. For example, an HTTP service could route packets addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or to a single server that returns different web pages. To simplify such testing, the hosts file may be configured to provide appropriate names for each address. + + Packets received on a non-loopback interface with a loopback source or destination address must be dropped. Such packets are sometimes referred to as Martian packets.[6] As with any other bogus packets, they may be malicious and any problems they might cause can be avoided by applying bogon filtering. +

+

Special cases

+

+ The releases of the MySQL database differentiate between the use of the hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When using localhost as the destination in a client connector interface of an application, the MySQL application programming interface connects to the database using a Unix domain socket, while a TCP connection via the loopback interface requires the direct use of the explicit address. + + One notable exception to the use of the 127.0.0.0/8 addresses is their use in Multiprotocol Label Switching (MPLS) traceroute error detection, in which their property of not being routable provides a convenient means to avoid delivery of faulty packets to end users. +

+ + + + + \ No newline at end of file From 92204c628414e6e4377bca195f4fbda7f27344e4 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 17 Mar 2026 10:55:20 +0100 Subject: [PATCH 21/49] s --- TPSI/viviani_giorgio/html/css/s | 1 + 1 file changed, 1 insertion(+) create mode 100644 TPSI/viviani_giorgio/html/css/s diff --git a/TPSI/viviani_giorgio/html/css/s b/TPSI/viviani_giorgio/html/css/s new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/s @@ -0,0 +1 @@ + From 12a339e9c56a8958f57cf0f2b196a5fac3cf8e0a Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 17 Mar 2026 10:55:42 +0100 Subject: [PATCH 22/49] style.css --- TPSI/viviani_giorgio/html/css/style.css | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/css/style.css diff --git a/TPSI/viviani_giorgio/html/css/style.css b/TPSI/viviani_giorgio/html/css/style.css new file mode 100644 index 00000000..9c896a76 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/style.css @@ -0,0 +1,2 @@ +h1 {color: green;} +h2 {color: green;} \ No newline at end of file From cab471a805454729f561ad9ee5b3d7c5b2ff83ae Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 17 Mar 2026 10:56:16 +0100 Subject: [PATCH 23/49] eliminato s --- TPSI/viviani_giorgio/html/css/s | 1 - 1 file changed, 1 deletion(-) delete mode 100644 TPSI/viviani_giorgio/html/css/s diff --git a/TPSI/viviani_giorgio/html/css/s b/TPSI/viviani_giorgio/html/css/s deleted file mode 100644 index 8b137891..00000000 --- a/TPSI/viviani_giorgio/html/css/s +++ /dev/null @@ -1 +0,0 @@ - From 0cc9d2572dbd17fd7bc1aaa903ecc575f2d6d6c9 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 17 Mar 2026 10:58:04 +0100 Subject: [PATCH 24/49] correzione nome file --- TPSI/viviani_giorgio/html/css/viviani_esercizio_04.css | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_04.css diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_04.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_04.css new file mode 100644 index 00000000..9c896a76 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_04.css @@ -0,0 +1,2 @@ +h1 {color: green;} +h2 {color: green;} \ No newline at end of file From 0460156831de560428b58ff55386278a32a2d62b Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 17 Mar 2026 10:58:36 +0100 Subject: [PATCH 25/49] correzione nome file --- .../html/Viviani_Esercizio_css_04.html | 69 ------------------- 1 file changed, 69 deletions(-) delete mode 100644 TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html diff --git a/TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html b/TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html deleted file mode 100644 index abd71fd5..00000000 --- a/TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - - - - Esercizio - - - - - - -

localhost

-

computer networking, localhost is a hostname that refers to the current computer used to access it. It is used to access the network services that are running on the host via the loopback network interface. Using the loopback interface bypasses any local network interface hardware.

- -

Loopback

-

local loopback mechanism may be used to run a network service on a host without requiring a physical network interface, or without making the service accessible from the networks the computer may be connected to. For example, a locally installed website may be accessed from a Web browser by the URL http://localhost to display its home page. - The name localhost normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 loopback address ::1. -

-

Name resolution

-

IPv4 network standards reserve the entire address block 127.0.0.0/8 (more than 16 million addresses) for loopback purposes.[2] That means any packet sent to any of those addresses is looped back. The address 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are not supported by all operating systems. However, they can be used to set up multiple server applications on the host, all listening on the same port number. The IPv6 standard assigns only a single address for loopback: ::1. - The resolution of the name localhost to one or more IP addresses is normally configured by the following lines in the operating system's hosts file: - 127.0.0.1 localhost
- ::1 localhost -

- - -

The name may also be resolved by Domain Name System (DNS) servers, but queries for this name should be resolved locally, and should not be forwarded to remote name servers. - - In addition to the mapping of localhost to the loopback addresses (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) addresses and it is also possible to assign other, or additional, names to any loopback address. The mapping of localhost to addresses other than the designated loopback address range in the hosts file or in DNS is not guaranteed to have the desired effect, as applications may map the name internally. - - In the Domain Name System, the name localhost is reserved as a top-level domain name, originally set aside to avoid confusion with the hostname used for loopback purposes.[3] IETF standards prohibit domain name registrars from assigning the name localhost.

- -

IETF standards

-

The name localhost is reserved for loopback purposes by RFC 6761 (Special-Use Domain Names),[4] which achieved the Proposed Standard maturity level in February 2013. The standard sets forth a number of special considerations governing the use of the name in the Domain Name System: -

-

An IPv4 or IPv6 address query for the name localhost must always resolve to the respective loopback address, which is specified in a separate standard. - Applications may resolve the name to a loopback address themselves, or pass it to the local name resolver mechanisms. - When a name resolver receives an address (A or AAAA) query for localhost, it should return the appropriate loopback addresses, and negative responses for any other requested record types. Queries for localhost should not be sent to caching name servers. - To avoid burdening the Domain Name System root servers with traffic, caching name servers should never request name server records for localhost, or forward resolution to authoritative name servers. - DNS registrars are precluded from delegating domain names in the top-level domain localhost. - When authoritative name servers receive queries for 'localhost' in spite of the provisions mentioned resolve them appropriately. - The IPv4 loopback addresses are reserved within the IPv4 address space by the IETF "Special Use IPv4 Addresses" standard (RFC 5735).[5] The reservation can be traced back to the November 1986 "Assigned Numbers" standard (RFC 990).

- -

In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC 4291) reserves the single IPv6 loopback address ::1 within the IPv6 address space. The standard precludes the assignment of that address to any physical interface, as well as its use as the source or destination address in any packet sent to remote hosts. Any such packet that is erroneously transmitted is not supposed to be routed, and should be dropped by all routers or hosts that receive it. - -

Packet processing

-

The processing of any packet sent to a loopback address, is implemented in the link layer of the TCP/IP stack. Such packets are never passed to any network interface controller (NIC) or hardware device driver and must not appear outside of a computing system, or be routed by any router. This permits software testing and local services in the absence of any hardware network interfaces. - - Looped-back packets are distinguished from any other packets traversing the TCP/IP stack only by the special IP address they were addressed to. Thus, the services that ultimately receive them respond according to the specified destination. For example, an HTTP service could route packets addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or to a single server that returns different web pages. To simplify such testing, the hosts file may be configured to provide appropriate names for each address. - - Packets received on a non-loopback interface with a loopback source or destination address must be dropped. Such packets are sometimes referred to as Martian packets.[6] As with any other bogus packets, they may be malicious and any problems they might cause can be avoided by applying bogon filtering. -

-

Special cases

-

- The releases of the MySQL database differentiate between the use of the hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When using localhost as the destination in a client connector interface of an application, the MySQL application programming interface connects to the database using a Unix domain socket, while a TCP connection via the loopback interface requires the direct use of the explicit address. - - One notable exception to the use of the 127.0.0.0/8 addresses is their use in Multiprotocol Label Switching (MPLS) traceroute error detection, in which their property of not being routable provides a convenient means to avoid delivery of faulty packets to end users. -

- - - - - \ No newline at end of file From 2a54208d95b8c363a9422fdf59c46ceed0c76847 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 17 Mar 2026 10:58:55 +0100 Subject: [PATCH 26/49] correzione nome file --- TPSI/viviani_giorgio/html/css/style.css | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 TPSI/viviani_giorgio/html/css/style.css diff --git a/TPSI/viviani_giorgio/html/css/style.css b/TPSI/viviani_giorgio/html/css/style.css deleted file mode 100644 index 9c896a76..00000000 --- a/TPSI/viviani_giorgio/html/css/style.css +++ /dev/null @@ -1,2 +0,0 @@ -h1 {color: green;} -h2 {color: green;} \ No newline at end of file From bf4c910ef0a32905fd2487357becd343addef5b1 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 17 Mar 2026 10:59:32 +0100 Subject: [PATCH 27/49] ??? --- .../html/Viviani_Esercizio_css_04.html | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html diff --git a/TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html b/TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html new file mode 100644 index 00000000..8f85cd14 --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_Esercizio_css_04.html @@ -0,0 +1,69 @@ + + + + + + + + + Esercizio + + + + + + +

localhost

+

computer networking, localhost is a hostname that refers to the current computer used to access it. It is used to access the network services that are running on the host via the loopback network interface. Using the loopback interface bypasses any local network interface hardware.

+ +

Loopback

+

local loopback mechanism may be used to run a network service on a host without requiring a physical network interface, or without making the service accessible from the networks the computer may be connected to. For example, a locally installed website may be accessed from a Web browser by the URL http://localhost to display its home page. + The name localhost normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 loopback address ::1. +

+

Name resolution

+

IPv4 network standards reserve the entire address block 127.0.0.0/8 (more than 16 million addresses) for loopback purposes.[2] That means any packet sent to any of those addresses is looped back. The address 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are not supported by all operating systems. However, they can be used to set up multiple server applications on the host, all listening on the same port number. The IPv6 standard assigns only a single address for loopback: ::1. + The resolution of the name localhost to one or more IP addresses is normally configured by the following lines in the operating system's hosts file: + 127.0.0.1 localhost
+ ::1 localhost +

+ + +

The name may also be resolved by Domain Name System (DNS) servers, but queries for this name should be resolved locally, and should not be forwarded to remote name servers. + + In addition to the mapping of localhost to the loopback addresses (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) addresses and it is also possible to assign other, or additional, names to any loopback address. The mapping of localhost to addresses other than the designated loopback address range in the hosts file or in DNS is not guaranteed to have the desired effect, as applications may map the name internally. + + In the Domain Name System, the name localhost is reserved as a top-level domain name, originally set aside to avoid confusion with the hostname used for loopback purposes.[3] IETF standards prohibit domain name registrars from assigning the name localhost.

+ +

IETF standards

+

The name localhost is reserved for loopback purposes by RFC 6761 (Special-Use Domain Names),[4] which achieved the Proposed Standard maturity level in February 2013. The standard sets forth a number of special considerations governing the use of the name in the Domain Name System: +

+

An IPv4 or IPv6 address query for the name localhost must always resolve to the respective loopback address, which is specified in a separate standard. + Applications may resolve the name to a loopback address themselves, or pass it to the local name resolver mechanisms. + When a name resolver receives an address (A or AAAA) query for localhost, it should return the appropriate loopback addresses, and negative responses for any other requested record types. Queries for localhost should not be sent to caching name servers. + To avoid burdening the Domain Name System root servers with traffic, caching name servers should never request name server records for localhost, or forward resolution to authoritative name servers. + DNS registrars are precluded from delegating domain names in the top-level domain localhost. + When authoritative name servers receive queries for 'localhost' in spite of the provisions mentioned resolve them appropriately. + The IPv4 loopback addresses are reserved within the IPv4 address space by the IETF "Special Use IPv4 Addresses" standard (RFC 5735).[5] The reservation can be traced back to the November 1986 "Assigned Numbers" standard (RFC 990).

+ +

In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC 4291) reserves the single IPv6 loopback address ::1 within the IPv6 address space. The standard precludes the assignment of that address to any physical interface, as well as its use as the source or destination address in any packet sent to remote hosts. Any such packet that is erroneously transmitted is not supposed to be routed, and should be dropped by all routers or hosts that receive it. + +

Packet processing

+

The processing of any packet sent to a loopback address, is implemented in the link layer of the TCP/IP stack. Such packets are never passed to any network interface controller (NIC) or hardware device driver and must not appear outside of a computing system, or be routed by any router. This permits software testing and local services in the absence of any hardware network interfaces. + + Looped-back packets are distinguished from any other packets traversing the TCP/IP stack only by the special IP address they were addressed to. Thus, the services that ultimately receive them respond according to the specified destination. For example, an HTTP service could route packets addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or to a single server that returns different web pages. To simplify such testing, the hosts file may be configured to provide appropriate names for each address. + + Packets received on a non-loopback interface with a loopback source or destination address must be dropped. Such packets are sometimes referred to as Martian packets.[6] As with any other bogus packets, they may be malicious and any problems they might cause can be avoided by applying bogon filtering. +

+

Special cases

+

+ The releases of the MySQL database differentiate between the use of the hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When using localhost as the destination in a client connector interface of an application, the MySQL application programming interface connects to the database using a Unix domain socket, while a TCP connection via the loopback interface requires the direct use of the explicit address. + + One notable exception to the use of the 127.0.0.0/8 addresses is their use in Multiprotocol Label Switching (MPLS) traceroute error detection, in which their property of not being routable provides a convenient means to avoid delivery of faulty packets to end users. +

+ + + + + \ No newline at end of file From e9790b129b3b586a1a6f8a4b8449ad3d94756e2f Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Mon, 30 Mar 2026 23:20:49 +0200 Subject: [PATCH 28/49] es html --- .../html/viviani_esercizio_css_07.html | 149 +++++++++++++ .../html/viviani_esercizio_css_08.html | 208 ++++++++++++++++++ .../html/viviani_esercizio_css_10.html | 61 +++++ .../html/viviani_esercizio_css_11.html | 69 ++++++ .../html/viviani_esercizio_css_12.html | 70 ++++++ .../html/viviani_esercizio_css_13.html | 95 ++++++++ 6 files changed, 652 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_07.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_08.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_10.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_11.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_12.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_13.html diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_07.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_07.html new file mode 100644 index 00000000..bd149ce7 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_07.html @@ -0,0 +1,149 @@ + + + + + + localhost + + + + + + + + + +

Localhost

+

+ The local loopback mechanism may be used to run a network service on a + host without requiring a physical network interface, or without making the + service accessible from the networks the computer may be connected to. For + example, a locally installed website may be accessed from a Web browser by + the URL http://localhost to display its home page. The name localhost + normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 + loopback address ::1. +

+ +

Loopback

+

+ IPv4 network standards reserve the entire address block 127.0.0.0/8 (more + than 16 million addresses) for loopback purposes.[2] That means any packet + sent to any of those addresses is looped back. The address 127.0.0.1 is + the standard address for IPv4 loopback traffic; the rest are not supported + by all operating systems. However, they can be used to set up multiple + server applications on the host, all listening on the same port number. + The IPv6 standard assigns only a single address for loopback: ::1. The + resolution of the name localhost to one or more IP addresses is normally + configured by the following lines in the operating system's hosts + file:IPv4 network standards reserve the entire address block 127.0.0.0/8 + (more than 16 million addresses) for loopback purposes.[2] That means any + packet sent to any of those addresses is looped back. The address + 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are + not supported by all operating systems. However, they can be used to set + up multiple server applications on the host, all listening on the same + port number. The IPv6 standard assigns only a single address for loopback: + ::1. The resolution of the name localhost to one or more IP addresses is + normally configured by the following lines in the operating system's hosts + file:
+ 127.0.0.1 localhost
+ ::1 localhost
+ 127.0.0.1 localhost
+ ::1 localhost +

+ The name may also be resolved by Domain Name System (DNS) servers, but + queries for this name should be resolved locally, and should not be + forwarded to remote name servers.
+
+ In addition to the mapping of localhost to the loopback addresses + (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) + addresses and it is also possible to assign other, or additional, names to + any loopback address. The mapping of localhost to addresses other than the + designated loopback address range in the hosts file or in DNS is not + guaranteed to have the desired effect, as applications may map the name + internally. +

+ In the Domain Name System, the name localhost is reserved as a top-level + domain name, originally set aside to avoid confusion with the hostname + used for loopback purposes.[3] IETF standards prohibit domain name + registrars from assigning the name localhost. +

+ +

IETF standards

+ +

+ The name localhost is reserved for loopback purposes by RFC 6761 + (Special-Use Domain Names),[4] which achieved the Proposed Standard + maturity level in February 2013. The standard sets forth a number of + special considerations governing the use of the name in the Domain Name + System:
+
+ + An IPv4 or IPv6 address query for the name localhost must always resolve + to the respective loopback address, which is specified in a separate + standard. Applications may resolve the name to a loopback address + themselves, or pass it to the local name resolver mechanisms. When a name + resolver receives an address (A or AAAA) query for localhost, it should + return the appropriate loopback addresses, and negative responses for any + other requested record types. Queries for localhost should not be sent to + caching name servers. To avoid burdening the Domain Name System root + servers with traffic, caching name servers should never request name + server records for localhost, or forward resolution to authoritative name + servers. DNS registrars are precluded from delegating domain names in the + top-level domain localhost. When authoritative name servers receive + queries for 'localhost' in spite of the provisions mentioned resolve them + appropriately. The IPv4 loopback addresses are reserved within the IPv4 + address space by the IETF "Special Use IPv4 Addresses" standard (RFC + 5735).[5] The reservation can be traced back to the November 1986 + "Assigned Numbers" standard (RFC 990). +
+
+ In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC + 4291) reserves the single IPv6 loopback address ::1 within the IPv6 + address space. The standard precludes the assignment of that address to + any physical interface, as well as its use as the source or destination + address in any packet sent to remote hosts. Any such packet that is + erroneously transmitted is not supposed to be routed, and should be + dropped by all routers or hosts that receive it. +

+ +

Packet processing

+

+ The processing of any packet sent to a loopback address, is implemented in + the link layer of the TCP/IP stack. Such packets are never passed to any + network interface controller (NIC) or hardware device driver and must not + appear outside of a computing system, or be routed by any router. This + permits software testing and local services in the absence of any hardware + network interfaces.

+ Looped-back packets are distinguished from any other packets traversing + the TCP/IP stack only by the special IP address they were addressed to. + Thus, the services that ultimately receive them respond according to the + specified destination. For example, an HTTP service could route packets + addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or + to a single server that returns different web pages. To simplify such + testing, the hosts file may be configured to provide appropriate names for + each address. +

+ Packets received on a non-loopback interface with a loopback source or + destination address must be dropped. Such packets are sometimes referred + to as Martian packets.[6] As with any other bogus packets, they may be + malicious and any problems they might cause can be avoided by applying + bogon filtering. +

+

Special cases

+ +

+ The releases of the MySQL database differentiate between the use of the + hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When + using localhost as the destination in a client connector interface of an + application, the MySQL application programming interface connects to the + database using a Unix domain socket, while a TCP connection via the + loopback interface requires the direct use of the explicit address. +

+ One notable exception to the use of the 127.0.0.0/8 addresses is their use + in Multiprotocol Label Switching (MPLS) traceroute error detection, in + which their property of not being routable provides a convenient means to + avoid delivery of faulty packets to end users. +

+ + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_08.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_08.html new file mode 100644 index 00000000..468d8c25 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_08.html @@ -0,0 +1,208 @@ + + + + + + local host + + + + + + + + + +

Localhost

+

+ The local loopback mechanism may be used to run a network service on a + host without requiring a physical network interface, or without making the + service accessible from the networks the computer may be connected to. For + example, a locally installed website may be accessed from a Web browser by + the URL http://localhost to display its home page. The name localhost + normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 + loopback address ::1. +

+
+

Loopback

+

+ IPv4 network standards reserve the entire address block 127.0.0.0/8 (more + than 16 million addresses) for loopback purposes.[2] That means any packet + sent to any of those addresses is looped back. The address 127.0.0.1 is + the standard address for IPv4 loopback traffic; the rest are not supported + by all operating systems. However, they can be used to set up multiple + server applications on the host, all listening on the same port number. + The IPv6 standard assigns only a single address for loopback: ::1. The + resolution of the name localhost to one or more IP addresses is normally + configured by the following lines in the operating system's hosts + file:IPv4 network standards reserve the entire address block 127.0.0.0/8 + (more than 16 million addresses) for loopback purposes.[2] That means any + packet sent to any of those addresses is looped back. The address + 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are + not supported by all operating systems. However, they can be used to set + up multiple server applications on the host, all listening on the same + port number. The IPv6 standard assigns only a single address for loopback: + ::1. The resolution of the name localhost to one or more IP addresses is + normally configured by the following lines in the operating system's hosts + file:
+ 127.0.0.1 localhost
+ ::1 localhost
+ 127.0.0.1 localhost
+ ::1 localhost +

+ The name may also be resolved by Domain Name System (DNS) servers, but + queries for this name should be resolved locally, and should not be + forwarded to remote name servers.
+
+ In addition to the mapping of localhost to the loopback addresses + (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) + addresses and it is also possible to assign other, or additional, names to + any loopback address. The mapping of localhost to addresses other than the + designated loopback address range in the hosts file or in DNS is not + guaranteed to have the desired effect, as applications may map the name + internally. +

+ In the Domain Name System, the name localhost is reserved as a top-level + domain name, originally set aside to avoid confusion with the hostname + used for loopback purposes.[3] IETF standards prohibit domain name + registrars from assigning the name localhost. +

+ +
+ +

IETF standards

+ +

+ The name localhost is reserved for loopback purposes by RFC 6761 + (Special-Use Domain Names),[4] which achieved the Proposed Standard + maturity level in February 2013. The standard sets forth a number of + special considerations governing the use of the name in the Domain Name + System:
+
+ + An IPv4 or IPv6 address query for the name localhost must always resolve + to the respective loopback address, which is specified in a separate + standard. Applications may resolve the name to a loopback address + themselves, or pass it to the local name resolver mechanisms. When a name + resolver receives an address (A or AAAA) query for localhost, it should + return the appropriate loopback addresses, and negative responses for any + other requested record types. Queries for localhost should not be sent to + caching name servers. To avoid burdening the Domain Name System root + servers with traffic, caching name servers should never request name + server records for localhost, or forward resolution to authoritative name + servers. DNS registrars are precluded from delegating domain names in the + top-level domain localhost. When authoritative name servers receive + queries for 'localhost' in spite of the provisions mentioned resolve them + appropriately. The IPv4 loopback addresses are reserved within the IPv4 + address space by the IETF "Special Use IPv4 Addresses" standard (RFC + 5735).[5] The reservation can be traced back to the November 1986 + "Assigned Numbers" standard (RFC 990). +
+
+ In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC + 4291) reserves the single IPv6 loopback address ::1 within the IPv6 + address space. The standard precludes the assignment of that address to + any physical interface, as well as its use as the source or destination + address in any packet sent to remote hosts. Any such packet that is + erroneously transmitted is not supposed to be routed, and should be + dropped by all routers or hosts that receive it. +

+ +
+ +

Packet processing

+

+ The processing of any packet sent to a loopback address, is implemented in + the link layer of the TCP/IP stack. Such packets are never passed to any + network interface controller (NIC) or hardware device driver and must not + appear outside of a computing system, or be routed by any router. This + permits software testing and local services in the absence of any hardware + network interfaces.

+ Looped-back packets are distinguished from any other packets traversing + the TCP/IP stack only by the special IP border="4" align="center"> + + + (0,0) + (0,1) + (0,2) + (0,3) + (0,4) + (0,5) + (0,6) + (0,7) + + + (1,0) + (1,1) + (1,2) + (1,3) + (1,4) + (1,5) + (1,6) + (1,7) + + + (2,0) + (2,1) + (2,2) + (2,3) + (2,4) + (2,5) + (2,6) + (2,7) + + + (3,0) + (3,1) + (3,2) + (3,3) + (3,4) + (3,5) + (3,6) + (3,7) + + + (4,0) + (4,1) + (4,2) + (4,3) + (4,4) + (4,5) + (4,6) + (4,7) + + + (5,0) + (5,1) + (5,2) + (5,3) + (5,4) + (5,5) + (5,6) + (5,7) + + + (6,0) + (6,1) + (6,2) + (6,3) + (6,4) + (6,5) + (6,6) + (6,7) + + + (7,0) + (7,1) + (7,2) + (7,3) + (7,4) + (7,5) + (7,6) + (7,7) + + + + + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_10.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_10.html new file mode 100644 index 00000000..8aeab084 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_10.html @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + Esercizio 10 + + + + +

Reti di Calcolatori

+

localhost

+
+

In computer networking, localhost is a hostname that refers to the current computer used to access it. It is used to access the network services that are running on the host via the loopback network interface. + Using the loopback interface bypasses any local network interface hardware. +

+
+

Loopback

+
+

The local loopback mechanism may be used to run a network service on a host without requiring a physical network interface, or without making the service accessible from the networks the computer may be connected to. For example, a locally installed website may be accessed from a Web browser by the URL http://localhost to display its home page. + The name localhost normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 loopback address ::1. +

+
+

Name resolution

+

IPv4 network standards reserve the entire address block 127.0.0.0/8 (more than 16 million addresses) for loopback purposes.[2] That means any packet sent to any of those addresses is looped back. The address 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are not supported by all operating systems. However, they can be used to set up multiple server applications on the host, all listening on the same port number. The IPv6 standard assigns only a single address for loopback: ::1. + The resolution of the name localhost to one or more IP addresses is normally configured by the following lines in the operating system's hosts file: + 127.0.0.1 localhost + ::1 localhost +

+

The name may also be resolved by Domain Name System (DNS) servers, but queries for this name should be resolved locally, and should not be forwarded to remote name servers.

+

In addition to the mapping of localhost to the loopback addresses (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) addresses and it is also possible to assign other, or additional, names to any loopback address. The mapping of localhost to addresses other than the designated loopback address range in the hosts file or in DNS is not guaranteed to have the desired effect, as applications may map the name internally.

+

In the Domain Name System, the name localhost is reserved as a top-level domain name, originally set aside to avoid confusion with the hostname used for loopback purposes.[3] IETF standards prohibit domain name registrars from assigning the name localhost.

+

IETF standards

+

The name localhost is reserved for loopback purposes by RFC 6761 (Special-Use Domain Names),[4] which achieved the Proposed Standard maturity level in February 2013. The standard sets forth a number of special considerations governing the use of the name in the Domain Name System:

+

An IPv4 or IPv6 address query for the name localhost must always resolve to the respective loopback address, which is specified in a separate standard. + Applications may resolve the name to a loopback address themselves, or pass it to the local name resolver mechanisms. + When a name resolver receives an address (A or AAAA) query for localhost, it should return the appropriate loopback addresses, and negative responses for any other requested record types. Queries for localhost should not be sent to caching name servers. + To avoid burdening the Domain Name System root servers with traffic, caching name servers should never request name server records for localhost, or forward resolution to authoritative name servers. + DNS registrars are precluded from delegating domain names in the top-level domain localhost. + When authoritative name servers receive queries for 'localhost' in spite of the provisions mentioned resolve them appropriately. + The IPv4 loopback addresses are reserved within the IPv4 address space by the IETF "Special Use IPv4 Addresses" standard (RFC 5735).[5] The reservation can be traced back to the November 1986 "Assigned Numbers" standard (RFC 990). +

+

In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC 4291) reserves the single IPv6 loopback address ::1 within the IPv6 address space. The standard precludes the assignment of that address to any physical interface, as well as its use as the source or destination address in any packet sent to remote hosts. Any such packet that is erroneously transmitted is not supposed to be routed, and should be dropped by all routers or hosts that receive it.

+

Packet processing

+

The processing of any packet sent to a loopback address, is implemented in the link layer of the TCP/IP stack. Such packets are never passed to any network interface controller (NIC) or hardware device driver and must not appear outside of a computing system, or be routed by any router. This permits software testing and local services in the absence of any hardware network interfaces.

+

Looped-back packets are distinguished from any other packets traversing the TCP/IP stack only by the special IP address they were addressed to. Thus, the services that ultimately receive them respond according to the specified destination. For example, an HTTP service could route packets addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or to a single server that returns different web pages. To simplify such testing, the hosts file may be configured to provide appropriate names for each address.

+

Packets received on a non-loopback interface with a loopback source or destination address must be dropped. Such packets are sometimes referred to as Martian packets.[6] As with any other bogus packets, they may be malicious and any problems they might cause can be avoided by applying bogon filtering.

+

special cases

+

The releases of the MySQL database differentiate between the use of the hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When using localhost as the destination in a client connector interface of an application, the MySQL application programming interface connects to the database using a Unix domain socket, while a TCP connection via the loopback interface requires the direct use of the explicit address.

+

One notable exception to the use of the 127.0.0.0/8 addresses is their use in Multiprotocol Label Switching (MPLS) traceroute error detection, in which their property of not being routable provides a convenient means to avoid delivery of faulty packets to end users.

+ + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_11.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_11.html new file mode 100644 index 00000000..93cb8096 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_11.html @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + + Esercizio 11 + + + + +

Reti di Calcolatori

+

localhost

+
+
+

In computer networking, localhost is a hostname that refers to the current computer used to access it. It is used to access the network services that are running on the host via the loopback network interface. + Using the loopback interface bypasses any local network interface hardware. +

+
+
+

Loopback

+
+

The local loopback mechanism may be used to run a network service on a host without requiring a physical network interface, or without making the service accessible from the networks the computer may be connected to. For example, a locally installed website may be accessed from a Web browser by the URL http://localhost to display its home page. + The name localhost normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 loopback address ::1. +

+
+

Name resolution

+
+
+
+

IPv4 network standards reserve the entire address block 127.0.0.0/8 (more than 16 million addresses) for loopback purposes.[2] That means any packet sent to any of those addresses is looped back. The address 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are not supported by all operating systems. However, they can be used to set up multiple server applications on the host, all listening on the same port number. The IPv6 standard assigns only a single address for loopback: ::1. + The resolution of the name localhost to one or more IP addresses is normally configured by the following lines in the operating system's hosts file: + 127.0.0.1 localhost + ::1 localhost +

+
+
+
+

The name may also be resolved by Domain Name System (DNS) servers, but queries for this name should be resolved locally, and should not be forwarded to remote name servers.

+

In addition to the mapping of localhost to the loopback addresses (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) addresses and it is also possible to assign other, or additional, names to any loopback address. The mapping of localhost to addresses other than the designated loopback address range in the hosts file or in DNS is not guaranteed to have the desired effect, as applications may map the name internally.

+

In the Domain Name System, the name localhost is reserved as a top-level domain name, originally set aside to avoid confusion with the hostname used for loopback purposes.[3] IETF standards prohibit domain name registrars from assigning the name localhost.

+

IETF standards

+

The name localhost is reserved for loopback purposes by RFC 6761 (Special-Use Domain Names),[4] which achieved the Proposed Standard maturity level in February 2013. The standard sets forth a number of special considerations governing the use of the name in the Domain Name System:

+

An IPv4 or IPv6 address query for the name localhost must always resolve to the respective loopback address, which is specified in a separate standard. + Applications may resolve the name to a loopback address themselves, or pass it to the local name resolver mechanisms. + When a name resolver receives an address (A or AAAA) query for localhost, it should return the appropriate loopback addresses, and negative responses for any other requested record types. Queries for localhost should not be sent to caching name servers. + To avoid burdening the Domain Name System root servers with traffic, caching name servers should never request name server records for localhost, or forward resolution to authoritative name servers. + DNS registrars are precluded from delegating domain names in the top-level domain localhost. + When authoritative name servers receive queries for 'localhost' in spite of the provisions mentioned resolve them appropriately. + The IPv4 loopback addresses are reserved within the IPv4 address space by the IETF "Special Use IPv4 Addresses" standard (RFC 5735).[5] The reservation can be traced back to the November 1986 "Assigned Numbers" standard (RFC 990). +

+

In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC 4291) reserves the single IPv6 loopback address ::1 within the IPv6 address space. The standard precludes the assignment of that address to any physical interface, as well as its use as the source or destination address in any packet sent to remote hosts. Any such packet that is erroneously transmitted is not supposed to be routed, and should be dropped by all routers or hosts that receive it.

+

Packet processing

+

The processing of any packet sent to a loopback address, is implemented in the link layer of the TCP/IP stack. Such packets are never passed to any network interface controller (NIC) or hardware device driver and must not appear outside of a computing system, or be routed by any router. This permits software testing and local services in the absence of any hardware network interfaces.

+

Looped-back packets are distinguished from any other packets traversing the TCP/IP stack only by the special IP address they were addressed to. Thus, the services that ultimately receive them respond according to the specified destination. For example, an HTTP service could route packets addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or to a single server that returns different web pages. To simplify such testing, the hosts file may be configured to provide appropriate names for each address.

+

Packets received on a non-loopback interface with a loopback source or destination address must be dropped. Such packets are sometimes referred to as Martian packets.[6] As with any other bogus packets, they may be malicious and any problems they might cause can be avoided by applying bogon filtering.

+

special cases

+

The releases of the MySQL database differentiate between the use of the hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When using localhost as the destination in a client connector interface of an application, the MySQL application programming interface connects to the database using a Unix domain socket, while a TCP connection via the loopback interface requires the direct use of the explicit address.

+

One notable exception to the use of the 127.0.0.0/8 addresses is their use in Multiprotocol Label Switching (MPLS) traceroute error detection, in which their property of not being routable provides a convenient means to avoid delivery of faulty packets to end users.

+ + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_12.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_12.html new file mode 100644 index 00000000..1becfab2 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_12.html @@ -0,0 +1,70 @@ +hi + + + + + + + + + + + + + + + Esercizio 11 + + + + +

Reti di Calcolatori

+

localhost

+
+
+

In computer networking, localhost is a hostname that refers to the current computer used to access it. It is used to access the network services that are running on the host via the loopback network interface. + Using the loopback interface bypasses any local network interface hardware. +

+
+
+

Loopback

+
+

The local loopback mechanism may be used to run a network service on a host without requiring a physical network interface, or without making the service accessible from the networks the computer may be connected to. For example, a locally installed website may be accessed from a Web browser by the URL http://localhost to display its home page. + The name localhost normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 loopback address ::1. +

+
+

Name resolution

+
+
+
+

IPv4 network standards reserve the entire address block 127.0.0.0/8 (more than 16 million addresses) for loopback purposes.[2] That means any packet sent to any of those addresses is looped back. The address 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are not supported by all operating systems. However, they can be used to set up multiple server applications on the host, all listening on the same port number. The IPv6 standard assigns only a single address for loopback: ::1. + The resolution of the name localhost to one or more IP addresses is normally configured by the following lines in the operating system's hosts file: + 127.0.0.1 localhost + ::1 localhost +

+
+
+
+

The name may also be resolved by Domain Name System (DNS) servers, but queries for this name should be resolved locally, and should not be forwarded to remote name servers.

+

In addition to the mapping of localhost to the loopback addresses (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) addresses and it is also possible to assign other, or additional, names to any loopback address. The mapping of localhost to addresses other than the designated loopback address range in the hosts file or in DNS is not guaranteed to have the desired effect, as applications may map the name internally.

+

In the Domain Name System, the name localhost is reserved as a top-level domain name, originally set aside to avoid confusion with the hostname used for loopback purposes.[3] IETF standards prohibit domain name registrars from assigning the name localhost.

+

IETF standards

+

The name localhost is reserved for loopback purposes by RFC 6761 (Special-Use Domain Names),[4] which achieved the Proposed Standard maturity level in February 2013. The standard sets forth a number of special considerations governing the use of the name in the Domain Name System:

+

An IPv4 or IPv6 address query for the name localhost must always resolve to the respective loopback address, which is specified in a separate standard. + Applications may resolve the name to a loopback address themselves, or pass it to the local name resolver mechanisms. + When a name resolver receives an address (A or AAAA) query for localhost, it should return the appropriate loopback addresses, and negative responses for any other requested record types. Queries for localhost should not be sent to caching name servers. + To avoid burdening the Domain Name System root servers with traffic, caching name servers should never request name server records for localhost, or forward resolution to authoritative name servers. + DNS registrars are precluded from delegating domain names in the top-level domain localhost. + When authoritative name servers receive queries for 'localhost' in spite of the provisions mentioned resolve them appropriately. + The IPv4 loopback addresses are reserved within the IPv4 address space by the IETF "Special Use IPv4 Addresses" standard (RFC 5735).[5] The reservation can be traced back to the November 1986 "Assigned Numbers" standard (RFC 990). +

+

In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC 4291) reserves the single IPv6 loopback address ::1 within the IPv6 address space. The standard precludes the assignment of that address to any physical interface, as well as its use as the source or destination address in any packet sent to remote hosts. Any such packet that is erroneously transmitted is not supposed to be routed, and should be dropped by all routers or hosts that receive it.

+

Packet processing

+

The processing of any packet sent to a loopback address, is implemented in the link layer of the TCP/IP stack. Such packets are never passed to any network interface controller (NIC) or hardware device driver and must not appear outside of a computing system, or be routed by any router. This permits software testing and local services in the absence of any hardware network interfaces.

+

Looped-back packets are distinguished from any other packets traversing the TCP/IP stack only by the special IP address they were addressed to. Thus, the services that ultimately receive them respond according to the specified destination. For example, an HTTP service could route packets addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or to a single server that returns different web pages. To simplify such testing, the hosts file may be configured to provide appropriate names for each address.

+

Packets received on a non-loopback interface with a loopback source or destination address must be dropped. Such packets are sometimes referred to as Martian packets.[6] As with any other bogus packets, they may be malicious and any problems they might cause can be avoided by applying bogon filtering.

+

special cases

+

The releases of the MySQL database differentiate between the use of the hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When using localhost as the destination in a client connector interface of an application, the MySQL application programming interface connects to the database using a Unix domain socket, while a TCP connection via the loopback interface requires the direct use of the explicit address.

+

One notable exception to the use of the 127.0.0.0/8 addresses is their use in Multiprotocol Label Switching (MPLS) traceroute error detection, in which their property of not being routable provides a convenient means to avoid delivery of faulty packets to end users.

+ + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_13.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_13.html new file mode 100644 index 00000000..acc2beb8 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_13.html @@ -0,0 +1,95 @@ + + + + + + Document + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
(0,0) (0,1) (0,2) (0,3) (0,4) (0,5) (0,6) (0,7)
(1,0) (1,1) (1,2) (1,3) (1,4) (1,5) (1,6) (1,7)
(2,0) (2,1) (2,2) (2,3) (2,4) (2,5) (2,6) (2,7)
(3,0) (3,1) (3,2) (3,3) (3,4) (3,5) (3,6) (3,7)
(4,0) (4,1) (4,2) (4,3) (4,4) (4,5) (4,6) (4,7)
(5,0) (5,1) (5,2) (5,3) (5,4) (5,5) (5,6) (5,7)
(6,0) (6,1) (6,2) (6,3) (6,4) (6,5) (6,6) (6,7)
(7,0) (7,1) (7,2) (7,3) (7,4) (7,5) (7,6) (7,7)
+ + \ No newline at end of file From 798dc53b9dbbb16e29aa5ce9cfa237a96acc41a1 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Mon, 30 Mar 2026 23:21:54 +0200 Subject: [PATCH 29/49] es html ( css) --- .../html/css/viviani_esercizio_css_07.css | 19 ++++++++++++ .../html/css/viviani_esercizio_css_08.css | 29 +++++++++++++++++++ .../html/css/viviani_esercizio_css_10.css | 16 ++++++++++ .../html/css/viviani_esercizio_css_11.css | 17 +++++++++++ .../html/css/viviani_esercizio_css_12.css | 23 +++++++++++++++ .../html/css/viviani_esercizio_css_13.css | 11 +++++++ 6 files changed, 115 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_07.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_08.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_10.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_11.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_12.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_13.css diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_07.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_07.css new file mode 100644 index 00000000..fc67058e --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_07.css @@ -0,0 +1,19 @@ +.cH1{ + color:blue; +} + +.cH2Ver{ + color:green; +} + +.cH2Ros{ + color:red; +} + +.cPAr{ + color:orange; +} + +.cPgr{ + color:grey; +} diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_08.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_08.css new file mode 100644 index 00000000..a3f21609 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_08.css @@ -0,0 +1,29 @@ +h1, h2, h3 { + color:red; + text-decoration:underline; + text-decoration-color: grey; +} + +p { + color:blue; + text-align: left; +} + +#idh2Verde{ + color:green; +} + +#idP7{ + color:red; + text-align: right; +} + +.cHrP{ + color:black; + size:10px; +} + +.cHrD{ + color:red; + size: 3px; +} diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_10.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_10.css new file mode 100644 index 00000000..29e46d2b --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_10.css @@ -0,0 +1,16 @@ +h1 > span { + color:blue; +} + +h1 > span { + color:red; +} + +p > span { + color:purple; +} + +div p > span { + + color:darkgreen; +} \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_11.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_11.css new file mode 100644 index 00000000..7a787c8a --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_11.css @@ -0,0 +1,17 @@ +p > mark{ + color: green;; +} +p > b { + color:yellow; + background-color: black; +} + +div em { + color:red; + background-color: yellow; +} + +div span{ + color:black; + background-color: yellow; +} diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_12.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_12.css new file mode 100644 index 00000000..c0ea56a7 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_12.css @@ -0,0 +1,23 @@ +a:link{ + color: blue; +} +a:visited{ + color:red; + background-color: yellow; +} +a:hover{ + color:green; +} + +h1:first-child{ + color:blue; + text-decoration: underline; +} +h2:first-child{ + color:green; +} + +p:first-child{ + color:red; + text-align: left; +} \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_13.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_13.css new file mode 100644 index 00000000..8870c537 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_13.css @@ -0,0 +1,11 @@ +td { + width: 100px; + height: 100px; + text-align:center; +} + +tr:nth-child(odd) td:nth-child(odd), tr:nth-child(even) td:nth-child(even){ + + background-color: black; + color:white; +} \ No newline at end of file From 4d7fa1e8ad304aee224940e17889d00b66e8cae7 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 31 Mar 2026 11:11:55 +0200 Subject: [PATCH 30/49] es html 14-15 --- .../html/viviani_esercizio_14css.html | 40 +++++++++++++++++++ .../html/viviani_esercizio_15css.html | 20 ++++++++++ 2 files changed, 60 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_14css.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_15css.html diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_14css.html b/TPSI/viviani_giorgio/html/viviani_esercizio_14css.html new file mode 100644 index 00000000..abd347ab --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_14css.html @@ -0,0 +1,40 @@ + + + + + + Document + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_15css.html b/TPSI/viviani_giorgio/html/viviani_esercizio_15css.html new file mode 100644 index 00000000..b3202a51 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_15css.html @@ -0,0 +1,20 @@ + + + + + + Document + + + +
+
+
+
+
+
+
+
+
+ + \ No newline at end of file From 22ffb6103c048c4aae8dd0c047e1324ddae652e0 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 31 Mar 2026 11:13:07 +0200 Subject: [PATCH 31/49] es css 14-15 --- .../html/css/viviani_esercizio_14css.css | 31 +++++++++ .../html/css/viviani_esercizio_15css.css | 67 +++++++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_14css.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_15css.css diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_14css.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_14css.css new file mode 100644 index 00000000..f9a241c8 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_14css.css @@ -0,0 +1,31 @@ +.col1 { + background-color: red; +} + +.hex1 { + background-color: #cc12aa +} + +.rgb1{ +background-color: rgb(78, 78, 128); + +} + +.rgba1{ + background-color: rgba(55, 25, 176,0.4); +} + + .high{ + background-color: hsl(311, 52%, 55%); + } + +.higha { +background-color: hsla(271, 76%, 53%, 0.3); + +} + + +td { + width: 300px; +height: 200px; +} diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_15css.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_15css.css new file mode 100644 index 00000000..c78fc46c --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_15css.css @@ -0,0 +1,67 @@ + #rect { + background-color: red; + border: 1px solid; + width: 400px; + height: 200px; + } + #rec1 + { +background-color: purple; +border: 1px solid; +height: 150px; +width: calc(100% * 1 / 4); + } +#rec2 +{ +background-color: purple; +border: 1px solid; +height: 150px; +width: calc(100% * 2 / 4); +} + +#rec3 +{ +background-color: purple; +border: 1px solid; +height: 150px; +width: calc(100% * 3 / 4); +} + +#rec4 +{ +background-color:purple; +border: 1px solid; +height: 150px; +width: calc(100% * 4 / 4); +} + + #rec5 + { +background-color:rgba(0, 128, 0,0.65); +border: 1px solid; +height: 221px; +width: calc(100% * 1 / 8); + } +#rec6 +{ +background-color:rgba(0, 128, 0,0.65); +border: 1px solid; +height: 221px; +width: calc(100% * 3 / 6); +} + +#rec7 +{ +background-color:rgba(0, 128, 0,0.65); +border: 1px solid; +height: 221px; +width: calc(100% * 5 / 8); +} + +#rec8 +{ +background-color:rgba(0, 128, 0,0.65); +border: 1px solid; +height: 221px; +width: calc(100% * 2 / 9); +} \ No newline at end of file From 70fc926d6dbfca8d910426767bc5538ed4dd0c25 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 31 Mar 2026 11:43:41 +0200 Subject: [PATCH 32/49] es 16(css) --- .../html/css/viviani_esercizio_16css.css | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_16css.css diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_16css.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_16css.css new file mode 100644 index 00000000..94605a1a --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_16css.css @@ -0,0 +1,40 @@ + +#bck1 { + background-image: url("../img/Senza_titolo.jpg"); + height: 200px; + width: 200px; + border: 10px; +} + +#bck2{ + background-image: url("https://static.wikitide.net/wikionewiki/1/1a/Gianmarco_Tocco.jpg"); + width: 480px; + height: 490px; +} + +#bck3{ + background-image: url("../img/Senza_titolo.jpg"); + height: 200px; + width: 1200px; + background-repeat: repeat; +} + +#bck4{ + background-image: url("../img/Senza_titolo.jpg"); + height: 200px; + width: 200px; + background-repeat: no-repeat; +} +#bck5{ + background-image: url("../img/Senza_titolo.jpg"); + height: 200px; + width: 1300px; + background-repeat: repeat-x; +} + +#bck6{ + background-image: url("../img/Senza_titolo.jpg"); + height: 1200px; + width: 200px; + background-repeat: repeat-y; +} \ No newline at end of file From 389a478d72e2665b1491aeffe7026cbef2aee039 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 31 Mar 2026 11:44:21 +0200 Subject: [PATCH 33/49] es 16 css (html) --- .../html/viviani_esercitazione_16css.html | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/viviani_esercitazione_16css.html diff --git a/TPSI/viviani_giorgio/html/viviani_esercitazione_16css.html b/TPSI/viviani_giorgio/html/viviani_esercitazione_16css.html new file mode 100644 index 00000000..dae60c07 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercitazione_16css.html @@ -0,0 +1,24 @@ + + + + + + Document + + + +
+
+
+
+
+
+
+
+
+
+
+
+ + + \ No newline at end of file From 76e2692b83cd5883956c07f654d79336efac7faf Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 31 Mar 2026 11:50:30 +0200 Subject: [PATCH 34/49] corretto es16css (html) --- TPSI/viviani_giorgio/html/viviani_esercitazione_16css.html | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/TPSI/viviani_giorgio/html/viviani_esercitazione_16css.html b/TPSI/viviani_giorgio/html/viviani_esercitazione_16css.html index dae60c07..60b48b90 100644 --- a/TPSI/viviani_giorgio/html/viviani_esercitazione_16css.html +++ b/TPSI/viviani_giorgio/html/viviani_esercitazione_16css.html @@ -9,16 +9,21 @@
+
+
+
+
+
- +
\ No newline at end of file From b09c552eb2a8fa08e73c1c51479407efe5deb4f2 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 28 Apr 2026 11:48:52 +0200 Subject: [PATCH 35/49] es 18-21 css (html) --- .../html/Viviani_es_18CSS.html | 15 ++ .../html/viviani_esercizio_css_19.html | 149 +++++++++++++++ .../html/viviani_esercizio_css_20.html | 143 +++++++++++++++ .../html/viviani_esercizio_css_21.html | 170 ++++++++++++++++++ 4 files changed, 477 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_es_18CSS.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_19.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_20.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_21.html diff --git a/TPSI/viviani_giorgio/html/Viviani_es_18CSS.html b/TPSI/viviani_giorgio/html/Viviani_es_18CSS.html new file mode 100644 index 00000000..c403fb3a --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_es_18CSS.html @@ -0,0 +1,15 @@ + + + + + + + Esercizio 18 + + +
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
+ + + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_19.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_19.html new file mode 100644 index 00000000..9184fc9b --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_19.html @@ -0,0 +1,149 @@ + + + + + + localhost + + + + + + + + + +

Localhost

+

+ The local loopback mechanism may be used to run a network service on a + host without requiring a physical network interface, or without making the + service accessible from the networks the computer may be connected to. For + example, a locally installed website may be accessed from a Web browser by + the URL http://localhost to display its home page. The name localhost + normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 + loopback address ::1. +

+ +

Loopback

+

+ IPv4 network standards reserve the entire address block 127.0.0.0/8 (more + than 16 million addresses) for loopback purposes.[2] That means any packet + sent to any of those addresses is looped back. The address 127.0.0.1 is + the standard address for IPv4 loopback traffic; the rest are not supported + by all operating systems. However, they can be used to set up multiple + server applications on the host, all listening on the same port number. + The IPv6 standard assigns only a single address for loopback: ::1. The + resolution of the name localhost to one or more IP addresses is normally + configured by the following lines in the operating system's hosts + file:IPv4 network standards reserve the entire address block 127.0.0.0/8 + (more than 16 million addresses) for loopback purposes.[2] That means any + packet sent to any of those addresses is looped back. The address + 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are + not supported by all operating systems. However, they can be used to set + up multiple server applications on the host, all listening on the same + port number. The IPv6 standard assigns only a single address for loopback: + ::1. The resolution of the name localhost to one or more IP addresses is + normally configured by the following lines in the operating system's hosts + file:
+ 127.0.0.1 localhost
+ ::1 localhost
+ 127.0.0.1 localhost
+ ::1 localhost +

+ The name may also be resolved by Domain Name System (DNS) servers, but + queries for this name should be resolved locally, and should not be + forwarded to remote name servers.
+
+ In addition to the mapping of localhost to the loopback addresses + (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) + addresses and it is also possible to assign other, or additional, names to + any loopback address. The mapping of localhost to addresses other than the + designated loopback address range in the hosts file or in DNS is not + guaranteed to have the desired effect, as applications may map the name + internally. +

+ In the Domain Name System, the name localhost is reserved as a top-level + domain name, originally set aside to avoid confusion with the hostname + used for loopback purposes.[3] IETF standards prohibit domain name + registrars from assigning the name localhost. +

+ +

IETF standards

+ +

+ The name localhost is reserved for loopback purposes by RFC 6761 + (Special-Use Domain Names),[4] which achieved the Proposed Standard + maturity level in February 2013. The standard sets forth a number of + special considerations governing the use of the name in the Domain Name + System:
+
+ + An IPv4 or IPv6 address query for the name localhost must always resolve + to the respective loopback address, which is specified in a separate + standard. Applications may resolve the name to a loopback address + themselves, or pass it to the local name resolver mechanisms. When a name + resolver receives an address (A or AAAA) query for localhost, it should + return the appropriate loopback addresses, and negative responses for any + other requested record types. Queries for localhost should not be sent to + caching name servers. To avoid burdening the Domain Name System root + servers with traffic, caching name servers should never request name + server records for localhost, or forward resolution to authoritative name + servers. DNS registrars are precluded from delegating domain names in the + top-level domain localhost. When authoritative name servers receive + queries for 'localhost' in spite of the provisions mentioned resolve them + appropriately. The IPv4 loopback addresses are reserved within the IPv4 + address space by the IETF "Special Use IPv4 Addresses" standard (RFC + 5735).[5] The reservation can be traced back to the November 1986 + "Assigned Numbers" standard (RFC 990). +
+
+ In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC + 4291) reserves the single IPv6 loopback address ::1 within the IPv6 + address space. The standard precludes the assignment of that address to + any physical interface, as well as its use as the source or destination + address in any packet sent to remote hosts. Any such packet that is + erroneously transmitted is not supposed to be routed, and should be + dropped by all routers or hosts that receive it. +

+ +

Packet processing

+

+ The processing of any packet sent to a loopback address, is implemented in + the link layer of the TCP/IP stack. Such packets are never passed to any + network interface controller (NIC) or hardware device driver and must not + appear outside of a computing system, or be routed by any router. This + permits software testing and local services in the absence of any hardware + network interfaces.

+ Looped-back packets are distinguished from any other packets traversing + the TCP/IP stack only by the special IP address they were addressed to. + Thus, the services that ultimately receive them respond according to the + specified destination. For example, an HTTP service could route packets + addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or + to a single server that returns different web pages. To simplify such + testing, the hosts file may be configured to provide appropriate names for + each address. +

+ Packets received on a non-loopback interface with a loopback source or + destination address must be dropped. Such packets are sometimes referred + to as Martian packets.[6] As with any other bogus packets, they may be + malicious and any problems they might cause can be avoided by applying + bogon filtering. +

+

Special cases

+ +

+ The releases of the MySQL database differentiate between the use of the + hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When + using localhost as the destination in a client connector interface of an + application, the MySQL application programming interface connects to the + database using a Unix domain socket, while a TCP connection via the + loopback interface requires the direct use of the explicit address. +

+ One notable exception to the use of the 127.0.0.0/8 addresses is their use + in Multiprotocol Label Switching (MPLS) traceroute error detection, in + which their property of not being routable provides a convenient means to + avoid delivery of faulty packets to end users. +

+ + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_20.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_20.html new file mode 100644 index 00000000..d595e610 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_20.html @@ -0,0 +1,143 @@ + + + + + localhost + + + + +

Localhost

+

+ The local loopback mechanism may be used to run a network service on a + host without requiring a physical network interface, or without making the + service accessible from the networks the computer may be connected to. For + example, a locally installed website may be accessed from a Web browser by + the URL http://localhost to display its home page. The name localhost + normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 + loopback address ::1. +

+ +

Loopback

+

+ IPv4 network standards reserve the entire address block 127.0.0.0/8 (more + than 16 million addresses) for loopback purposes.[2] That means any packet + sent to any of those addresses is looped back. The address 127.0.0.1 is + the standard address for IPv4 loopback traffic; the rest are not supported + by all operating systems. However, they can be used to set up multiple + server applications on the host, all listening on the same port number. + The IPv6 standard assigns only a single address for locss/viviani_esercizio_19.cssopback: ::1. The + resolution of the name localhost to one or more IP addresses is normally + configured by the following lines in the operating system's hosts + file:IPv4 network standards reserve the entire address block 127.0.0.0/8 + (more than 16 million addresses) for loopback purposes.[2] That means any + packet sent to any of those addresses is looped back. The address + 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are + not supported by all operating systems. However, they can be used to set + up multiple server applications on the host, all listening on the same + port number. The IPv6 standard assigns only a single address for loopback: + ::1. The resolution of the name localhost to one or more IP addresses is + normally configured by the following lines in the operating system's hosts + file:
+ 127.0.0.1 localhost
+ ::1 localhost
+ 127.0.0.1 localhost
+ ::1 localhost +

+ The name may also be resolved by Domain Name System (DNS) servers, but + queries for this name should be resolved locally, and should not be + forwarded to remote name servers.
+
+ In addition to the mapping of localhost to the loopback addresses + (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) + addresses and it is also possible to assign other, or additional, names to + any loopback address. The mapping of localhost to addresses other than the + designated loopback address range in the hosts file or in DNS is not + guaranteed to have the desired effect, as applications may map the name + internally. +

+ In the Domain Name System, the name localhost is reserved as a top-level + domain name, originally set aside to avoid confusion with the hostname + used for loopback purposes.[3] IETF standards prohibit domain name + registrars from assigning the name localhost. +

+ +

IETF standards

+ +

+ The name localhost is reserved for loopback purposes by RFC 6761 + (Special-Use Domain Names),[4] which achieved the Proposed Standard + maturity level in February 2013. The standard sets forth a number of + special considerations governing the use of the name in the Domain Name + System:
+
+ + An IPv4 or IPv6 address query for the name localhost must always resolve + to the respective loopback address, which is specified in a separate + standard. Applications may resolve the name to a loopback address + themselves, or pass it to the local name resolver mechanisms. When a name + resolver receives an address (A or AAAA) query for localhost, it should + return the appropriate loopback addresses, and negative responses for any + other requested record types. Queries for localhost should not be sent to + caching name servers. To avoid burdening the Domain Name System root + servers with traffic, caching name servers should never request name + server records for localhost, or forward resolution to authoritative name + servers. DNS registrars are precluded from delegating domain names in the + top-level domain localhost. When authoritative name servers receive + queries for 'localhost' in spite of the provisions mentioned resolve them + appropriately. The IPv4 loopback addresses are reserved within the IPv4 + address space by the IETF "Special Use IPv4 Addresses" standard (RFC + 5735).[5] The reservation can be traced back to the November 1986 + "Assigned Numbers" standard (RFC 990). +
+
+ In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC + 4291) reserves the single IPv6 loopback address ::1 within the IPv6 + address space. The standard precludes the assignment of that address to + any physical interface, as well as its use as the source or destination + address in any packet sent to remote hosts. Any such packet that is + erroneously transmitted is not supposed to be routed, and should be + dropped by all routers or hosts that receive it. +

+ +

Packet processing

+

+ The processing of any packet sent to a loopback address, is implemented in + the link layer of the TCP/IP stack. Such packets are never passed to any + network interface controller (NIC) or hardware device driver and must not + appear outside of a computing system, or be routed by any router. This + permits software testing and local services in the absence of any hardware + network interfaces.

+ Looped-back packets are distinguished from any other packets traversing + the TCP/IP stack only by the special IP address they were addressed to. + Thus, the services that ultimately receive them respond according to the + specified destination. For example, an HTTP service could route packets + addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or + to a single server that returns different web pages. To simplify such + testing, the hosts file may be configured to provide appropriate names for + each address. +

+ Packets received on a non-loopback interface with a loopback source or + destination address must be dropped. Such packets are sometimes referred + to as Martian packets.[6] As with any other bogus packets, they may be + malicious and any problems they might cause can be avoided by applying + bogon filtering. +

+

Special cases

+ +

+ The releases of the MySQL database differentiate between the use of the + hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When + using localhost as the destination in a client connector interface of an + application, the MySQL application programming interface connects to the + database using a Unix domain socket, while a TCP connection via the + loopback interface requires the direct use of the explicit address. +

+ One notable exception to the use of the 127.0.0.0/8 addresses is their use + in Multiprotocol Label Switching (MPLS) traceroute error detection, in + which their property of not being routable provides a convenient means to + avoid delivery of faulty packets to end users. +

+ + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_21.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_21.html new file mode 100644 index 00000000..a70f3799 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_21.html @@ -0,0 +1,170 @@ + + + + + + localhost + + + + + + + + + + + + + +

Localhost

+

+ The local loopback mechanism may be used to run a network service on a + host without requiring a physical network interface, or without making the + service accessible from the networks the computer may be connected to. For + example, a locally installed website may be accessed from a Web browser by + the URL http://localhost to display its home page. The name localhost + normally resolves to the IPv4 loopback address 127.0.0.1, and to the IPv6 + loopback address ::1. +

+ +

Loopback

+

+ IPv4 network standards reserve the entire address block 127.0.0.0/8 (more + than 16 million addresses) for loopback purposes.[2] That means any packet + sent to any of those addresses is looped back. The address 127.0.0.1 is + the standard address for IPv4 loopback traffic; the rest are not supported + by all operating systems. However, they can be used to set up multiple + server applications on the host, all listening on the same port number. + The IPv6 standard assigns only a single address for loopback: ::1. The + resolution of the name localhost to one or more IP addresses is normally + configured by the following lines in the operating system's hosts + file:IPv4 network standards reserve the entire address block 127.0.0.0/8 + (more than 16 million addresses) for loopback purposes.[2] That means any + packet sent to any of those addresses is looped back. The address + 127.0.0.1 is the standard address for IPv4 loopback traffic; the rest are + not supported by all operating systems. However, they can be used to set + up multiple server applications on the host, all listening on the same + port number. The IPv6 standard assigns only a single address for loopback: + ::1. The resolution of the name localhost to one or more IP addresses is + normally configured by the following lines in the operating system's hosts +

    +
  • file:
  • +
  • 27.0.0.1 localhost
  • +
  • ::1 localhost
  • +
  • 127.0.0.1 localhost
  • +
  • ::1 localhost
  • +
+

+ The name may also be resolved by Domain Name System (DNS) servers, but + queries for this name should be resolved locally, and should not be + forwarded to remote name servers.
+
+ In addition to the mapping of localhost to the loopback addresses + (127.0.0.1 and ::1), localhost may also be mapped to other IPv4 (loopback) + addresses and it is also possible to assign other, or additional, names to + any loopback address. The mapping of localhost to addresses other than the + designated loopback address range in the hosts file or in DNS is not + guaranteed to have the desired effect, as applications may map the name + internally. +

+ In the Domain Name System, the name localhost is reserved as a top-level + domain name, originally set aside to avoid confusion with the hostname + used for loopback purposes.[3] IETF standards prohibit domain name + registrars from assigning the name localhost. +

+ +

IETF standards

+ +

+ The name localhost is reserved for loopback purposes by RFC 6761 + (Special-Use Domain Names),[4] which achieved the Proposed Standard + maturity level in February 2013. The standard sets forth a number of + special considerations governing the use of the name in the Domain Name + System:
+
+ + An IPv4 or IPv6 address query for the name localhost must always resolve + to the respective loopback address, which is specified in a separate + standard. Applications may resolve the name to a loopback address + themselves, or pass it to the local name resolver mechanisms. When a name + resolver receives an address (A or AAAA) query for localhost, it should + return the appropriate loopback addresses, and negative responses for any + other requested record types. Queries for localhost should not be sent to + caching name servers. To avoid burdening the Domain Name System root + servers with traffic, caching name servers should never request name + server records for localhost, or forward resolution to authoritative name + servers. DNS registrars are precluded from delegating domain names in the + top-level domain localhost. When authoritative name servers receive + queries for 'localhost' in spite of the provisions mentioned resolve them + appropriately. The IPv4 loopback addresses are reserved within the IPv4 + address space by the IETF "Special Use IPv4 Addresses" standard (RFC + 5735).[5] The reservation can be traced back to the November 1986 + "Assigned Numbers" standard (RFC 990). +
+
+ In contrast, the IETF "IP Version 6 Addressing Architecture" standard (RFC + 4291) reserves the single IPv6 loopback address ::1 within the IPv6 + address space. The standard precludes the assignment of that address to + any physical interface, as well as its use as the source or destination + address in any packet sent to remote hosts. Any such packet that is + erroneously transmitted is not supposed to be routed, and should be + dropped by all routers or hosts that receive it. +

+ +

Packet processing

+

+ The processing of any packet sent to a loopback address, is implemented in + the link layer of the TCP/IP stack. Such packets are never passed to any + network interface controller (NIC) or hardware device driver and must not + appear outside of a computing system, or be routed by any router. This + permits software testing and local services in the absence of any hardware + network interfaces.

+ Looped-back packets are distinguished from any other packets traversing + the TCP/IP stack only by the special IP address they were addressed to. + Thus, the services that ultimately receive them respond according to the + specified destination. For example, an HTTP service could route packets + addressed to 127.0.0.99:80 and 127.0.0.100:80 to different Web servers, or + to a single server that returns different web pages. To simplify such + testing, the hosts file may be configured to provide appropriate names for + each address. +

+ Packets received on a non-loopback interface with a loopback source or + destination address must be dropped. Such packets are sometimes referred + to as Martian packets.[6] As with any other bogus packets, they may be + malicious and any problems they might cause can be avoided by applying + bogon filtering. +

+

Special cases

+ +

+ The releases of the MySQL database differentiate between the use of the + hostname localhost and the use of the addresses 127.0.0.1 and ::1.[7] When + using localhost as the destination in a client connector interface of an + application, the MySQL application programming interface connects to the + database using a Unix domain socket, while a TCP connection via the + loopback interface requires the direct use of the explicit address. +

+ One notable exception to the use of the 127.0.0.0/8 addresses is their use + in Multiprotocol Label Switching (MPLS) traceroute error detection, in + which their property of not being routable provides a convenient means to + avoid delivery of faulty packets to end users. + +

    +
  1. 1
  2. +
  3. 2
  4. +
  5. 3
  6. +
+
+
    +
  • 1
  • +
  • 2
  • +
  • 3
  • +
+

+ + From cbfa3fb0311b7bab3adbf0085271c0b13d5fabb9 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 28 Apr 2026 11:49:50 +0200 Subject: [PATCH 36/49] es 18-21 css (css) --- .../html/css/Viviani_esercizio_css_18.css | 33 +++++++++++++++ .../html/css/viviani_esercizio_19.css | 14 +++++++ .../html/css/viviani_esercizio_20.css | 22 ++++++++++ .../html/css/viviani_esercizio_21.css | 42 +++++++++++++++++++ 4 files changed, 111 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/css/Viviani_esercizio_css_18.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_19.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_20.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_21.css diff --git a/TPSI/viviani_giorgio/html/css/Viviani_esercizio_css_18.css b/TPSI/viviani_giorgio/html/css/Viviani_esercizio_css_18.css new file mode 100644 index 00000000..e63c7665 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/Viviani_esercizio_css_18.css @@ -0,0 +1,33 @@ +div { + background-color: lightblue; + color:navy; + border-top: 15px solid navy; + border-bottom: 15px solid navy; + } + + #div1 { + width: 100px; + padding: 25px; + border: 25px solid navy; + margin-bottom: 2rem; + + } + + #div2 { + width: 250px; + padding-left: 15px; + padding-right: 10px; + border-left: 10px solid navy; + border-right: 15px solid navy; + margin-bottom: 2rem; + + } + + #div3 { + width: 353px; + padding-left: 1px; + padding-right: 19px; + border-left: 14px solid navy; + border-right: 21px solid navy; + + } \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_19.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_19.css new file mode 100644 index 00000000..3bfe9b3b --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_19.css @@ -0,0 +1,14 @@ +h1 { + border-bottom: solid 5px rgb(30, 27, 206); + border-left: solid 7px rgb(0, 0, 0); + } + +h2 { + border-top: dashed 2px rgb(9, 187, 9); + } + +p { + border-bottom: dashed 3px rgba(123, 128, 123, 0.87) ; + border-left: solid 6px rgb(4, 92, 4); + border-right: solid 6px rgb(4, 92, 4); + } diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_20.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_20.css new file mode 100644 index 00000000..f0d2b177 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_20.css @@ -0,0 +1,22 @@ +h1 { + text-transform: uppercase; + color: blue; +} + +h2 { + text-transform: capitalize; + color: red; + text-decoration: underline; +} + +p { + text-align: justify; +} + +#p3 { + text-align: right; +} + +#omb { + text-shadow: 2px 2px 1.5px black; +} diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_21.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_21.css new file mode 100644 index 00000000..98b40041 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_21.css @@ -0,0 +1,42 @@ +#d1 { + font-family: "BJCree", serif; + font-weight: 400; + font-style: normal; +} + +#d2 { + font-family: "BJCree", serif; + font-weight: 500; + font-style: normal; +} + +#d3 { + font-family: "BJCree", serif; + font-weight: 600; + font-style: normal; +} + +#d4 { + font-family: "BJCree", serif; + font-weight: 700; + font-style: normal; +} + +ul.b { + list-style-type: none; +} + +ul.b li:before { + content: "done_outline"; + font-family: "Material Icons"; + color: blue; + padding-right: 6.7px; +} + +ul.c { + list-style-type: circle; +} +ol{ +list-style-type: upper-roman; + +} \ No newline at end of file From 4ce779e05e2727e04fbc9e5f808be8b1ef4e4bc5 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Mon, 4 May 2026 23:04:41 +0200 Subject: [PATCH 37/49] agiunta css in portfolio --- TPSI/viviani_giorgio/portfolio/index.html | 69 ++++++++--------------- 1 file changed, 23 insertions(+), 46 deletions(-) diff --git a/TPSI/viviani_giorgio/portfolio/index.html b/TPSI/viviani_giorgio/portfolio/index.html index ac718a82..51b0ad66 100644 --- a/TPSI/viviani_giorgio/portfolio/index.html +++ b/TPSI/viviani_giorgio/portfolio/index.html @@ -1,46 +1,23 @@ - - - - - Portfolio - - - -

il mio Portfolio

Giorgio Viviani

-
- -

Chi sono

-

...

- -

Progetti

-
    -
  • ...
  • -
  • ...
  • - -
- -

Contatti

-

Email: giorgio.viviani@istitutoagnelli.it

- - - - \ No newline at end of file + + + + + + Portfolio + + + + +

il mio Portfolio

Giorgio Viviani

+
+ +

Chi sono

+

Mi chiamo Giorgio Viviani e sono uno studente dell'Istituto E. Agnelli, dove frequento l'indirizzo informatica. Nel tempo libero mi piace guidare al simulatore, e quando posso, mi diverte molto assemblare PC, due passioni che mi permettono di divertirmi e di approfondire il mio interesse per la tecnologia.

+ +

Progetti

+
    + +

    Contatti

    +

    Email: giorgio.viviani@istitutoagnelli.it

    + + From a59328c0559cee84c69ff244fd7b79a0f5bd22ab Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Mon, 4 May 2026 23:06:06 +0200 Subject: [PATCH 38/49] inserimento css --- .../viviani_giorgio/portfolio/style/style,css | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 TPSI/viviani_giorgio/portfolio/style/style,css diff --git a/TPSI/viviani_giorgio/portfolio/style/style,css b/TPSI/viviani_giorgio/portfolio/style/style,css new file mode 100644 index 00000000..d4a7098d --- /dev/null +++ b/TPSI/viviani_giorgio/portfolio/style/style,css @@ -0,0 +1,42 @@ +body { + font-family: Arial, sans-serif; + max-width: 760px; + margin: 0 auto; + padding: 30px 20px; + background-color: #111827; + color: #e5e7eb; + line-height: 1.6; +} + +h1 { + margin-bottom: 5px; + color: #f9fafb; +} + +h2 { + margin-top: 25px; + color: #60a5fa; +} + +p, li { + font-size: 16px; +} + +ul { + padding-left: 0; + list-style: none; +} + +li { + margin-bottom: 12px; + padding: 12px 14px; + background-color: #1f2937; + border-left: 4px solid #60a5fa; + border-radius: 8px; +} + +hr { + border: none; + border-top: 2px solid #374151; + margin: 20px 0; +} From 8f107917fa7b47b5a8b1c1ee8d2de1b7fccddf08 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 5 May 2026 22:29:31 +0200 Subject: [PATCH 39/49] es 22-->27 css --- .../html/viviani_esercizio_css_22.html | 22 +++++ .../html/viviani_esercizio_css_23.html | 18 ++++ .../html/viviani_esercizio_css_24.html | 93 +++++++++++++++++++ .../html/viviani_esercizio_css_25.html | 17 ++++ .../html/viviani_esercizio_css_26.html | 15 +++ .../html/viviani_esercizio_css_27.html | 16 ++++ 6 files changed, 181 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html new file mode 100644 index 00000000..9c96e0bd --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html @@ -0,0 +1,22 @@ + + + + + + + Esercizio 22 + + +
      +
    • Home
    • +
    • ATS
    • +
    • Servizi
    • +
    • Contatti
    • +
    • About
    • +
    + + + + + + \ No newline at end of file diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html new file mode 100644 index 00000000..4cd6d8ab --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html @@ -0,0 +1,18 @@ + + + + + + + Esercizio 23 + + + + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html new file mode 100644 index 00000000..a67e5865 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html @@ -0,0 +1,93 @@ + + + + + + + Esercizio 24 + + +
    +
    +
    0:0
    +
    0:1
    +
    0:2
    +
    0:3
    +
    0:4
    +
    0:5
    +
    0:6
    +
    0:7
    +
    +
    +
    1:0
    +
    1:1
    +
    1:2
    +
    1:3
    +
    1:4
    +
    1:5
    +
    1:6
    +
    1:7
    +
    +
    +
    2:0
    +
    2:1
    +
    2:2
    +
    2:3
    +
    2:4
    +
    2:5
    +
    2:6
    +
    2:7
    +
    +
    +
    3:0
    +
    3:1
    +
    3:2
    +
    3:3
    +
    3:4
    +
    3:5
    +
    3:6
    +
    3:7
    +
    +
    +
    4:0
    +
    4:1
    +
    4:2
    +
    4:3
    +
    4:4
    +
    4:5
    +
    4:6
    +
    4:7
    +
    +
    +
    5:0
    +
    5:1
    +
    5:2
    +
    5:3
    +
    5:4
    +
    5:5
    +
    5:6
    +
    5:7
    +
    +
    +
    6:0
    +
    6:1
    +
    6:2
    +
    6:3
    +
    6:4
    +
    6:5
    +
    6:6
    +
    6:7
    +
    +
    +
    7:0
    +
    7:1
    +
    7:2
    +
    7:3
    +
    7:4
    +
    7:5
    +
    7:6
    +
    7:7
    +
    +
    + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html new file mode 100644 index 00000000..a4a0604f --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html @@ -0,0 +1,17 @@ + + + + + + + Esercizio 25 + + +
    One
    +
    The two boxes should float to either side of this text
    +
    Two
    + + + + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html new file mode 100644 index 00000000..3eb9071b --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html @@ -0,0 +1,15 @@ + + + + + + + Esercizio 26 + + +
    +
    Float
    +

    This sentence appears next to the float.

    +
    + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html new file mode 100644 index 00000000..73c16f7f --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html @@ -0,0 +1,16 @@ + + + + + + + Esercizio 27 + + +
    Float
    + +

    This sentence appears next to the float.

    + +

    Cause this sentence to appear below the float.

    + + From 8d3199bdba8ab6293edd860c864f722165b5cdb9 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 5 May 2026 22:30:21 +0200 Subject: [PATCH 40/49] es 22-->27 css ( .css) --- .../html/css/viviani_esercizio_css_22.css | 26 +++++++++++++++ .../html/css/viviani_esercizio_css_23.css | 25 ++++++++++++++ .../html/css/viviani_esercizio_css_24.css | 33 +++++++++++++++++++ .../html/css/viviani_esercizio_css_25.css | 21 ++++++++++++ .../html/css/viviani_esercizio_css_26.css | 30 +++++++++++++++++ .../html/css/viviani_esercizio_css_27.css | 27 +++++++++++++++ 6 files changed, 162 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_22.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_23.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_24.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_25.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_26.css create mode 100644 TPSI/viviani_giorgio/html/css/viviani_esercizio_css_27.css diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_22.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_22.css new file mode 100644 index 00000000..58d2f9e3 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_22.css @@ -0,0 +1,26 @@ +li { + display: inline; + float: left ; + padding: 10px; + background-color: black; + color: white; + +} + +li:hover { + background-color: white; + color: black; +} + +.abt { + background-color:grey; + color: white; +} + +.abt:hover { + background-color: white; + color: grey; +} + + + diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_23.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_23.css new file mode 100644 index 00000000..787115ff --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_23.css @@ -0,0 +1,25 @@ +.menu { + overflow: hidden; +} + +.item { + float: left; + padding: 10px; + background-color: black; + color: white; +} + +.item:hover { + background-color: white; + color: black; +} + +.abt { + background-color: grey; + color: white; +} + +.abt:hover { + background-color: white; + color: grey; +} diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_24.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_24.css new file mode 100644 index 00000000..ce1b5640 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_24.css @@ -0,0 +1,33 @@ +body { + font-family: Arial, sans-serif; +} + +.scacchiera { + width: 400px; + margin: 20px auto; +} + +.riga { + overflow: hidden; +} + +.casella { + width: 50px; + height: 50px; + float: left; + text-align: center; + line-height: 50px; + font-size: 12px; +} + +.riga:nth-child(odd) .casella:nth-child(odd), +.riga:nth-child(even) .casella:nth-child(even) { + background-color: white; + color: black; +} + +.riga:nth-child(odd) .casella:nth-child(even), +.riga:nth-child(even) .casella:nth-child(odd) { + background-color: black; + color: white; +} diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_25.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_25.css new file mode 100644 index 00000000..23902dc3 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_25.css @@ -0,0 +1,21 @@ +body { + font-family: Arial, sans-serif; + margin: 20px; +} + +#num { + background-color: purple; + color: white; + width: 100px; + height: 100px; + text-align: left; + line-height: 30px; +float: left; + +} + +div { + width: 100px; + height: 100px; + float: left; +} diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_26.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_26.css new file mode 100644 index 00000000..9a95b4fe --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_26.css @@ -0,0 +1,30 @@ +body { + font-family: Arial, sans-serif; + margin: 20px; +} + +.contenitore { + overflow: hidden; + width: 430px; + padding: 20px; + background-color: purple; + +} + +.riquadro { + width: 110px; + height: 110px; + float: right; + background-color: rgb(103, 193, 193); + color: white; + padding: 15px; + border-radius: 5px; + +} + +p { + color: white; + font-size: 18px; + margin: 0; + +} diff --git a/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_27.css b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_27.css new file mode 100644 index 00000000..2d30ba42 --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/viviani_esercizio_css_27.css @@ -0,0 +1,27 @@ +body { + font-family: Arial, sans-serif; + margin: 20px; +} + +.box { + width: 180px; + height: 180px; + float: left; + background-color: purple; + color: white; + font-size: 28px; + padding: 20px; + border-radius: 8px; + margin-right: 20px; +} + +.testo-sopra { + font-size: 28px; + +} + +.testo-sotto { + font-size: 28px; + clear: left; + margin-top: 20px; +} From 1e92e63a9507624b371a8b216181b6e5889f3911 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 5 May 2026 22:36:15 +0200 Subject: [PATCH 41/49] togliendo i file errati --- .../html/viviani_esercizio_css_23.html | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html deleted file mode 100644 index 4cd6d8ab..00000000 --- a/TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - Esercizio 23 - - - - - From 212c5bf9a6c3201ba21e9582b936add01470b843 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 5 May 2026 22:36:33 +0200 Subject: [PATCH 42/49] togliendo i file errati --- .../html/viviani_esercizio_css_22.html | 22 ------------------- 1 file changed, 22 deletions(-) delete mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html deleted file mode 100644 index 9c96e0bd..00000000 --- a/TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - Esercizio 22 - - -
      -
    • Home
    • -
    • ATS
    • -
    • Servizi
    • -
    • Contatti
    • -
    • About
    • -
    - - - - - - \ No newline at end of file From f81d6ab3a52626a21449076171fe8a12599dfd8f Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 5 May 2026 22:37:11 +0200 Subject: [PATCH 43/49] t --- .../html/viviani_esercizio_css_24.html | 93 ------------------- 1 file changed, 93 deletions(-) delete mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html deleted file mode 100644 index a67e5865..00000000 --- a/TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - Esercizio 24 - - -
    -
    -
    0:0
    -
    0:1
    -
    0:2
    -
    0:3
    -
    0:4
    -
    0:5
    -
    0:6
    -
    0:7
    -
    -
    -
    1:0
    -
    1:1
    -
    1:2
    -
    1:3
    -
    1:4
    -
    1:5
    -
    1:6
    -
    1:7
    -
    -
    -
    2:0
    -
    2:1
    -
    2:2
    -
    2:3
    -
    2:4
    -
    2:5
    -
    2:6
    -
    2:7
    -
    -
    -
    3:0
    -
    3:1
    -
    3:2
    -
    3:3
    -
    3:4
    -
    3:5
    -
    3:6
    -
    3:7
    -
    -
    -
    4:0
    -
    4:1
    -
    4:2
    -
    4:3
    -
    4:4
    -
    4:5
    -
    4:6
    -
    4:7
    -
    -
    -
    5:0
    -
    5:1
    -
    5:2
    -
    5:3
    -
    5:4
    -
    5:5
    -
    5:6
    -
    5:7
    -
    -
    -
    6:0
    -
    6:1
    -
    6:2
    -
    6:3
    -
    6:4
    -
    6:5
    -
    6:6
    -
    6:7
    -
    -
    -
    7:0
    -
    7:1
    -
    7:2
    -
    7:3
    -
    7:4
    -
    7:5
    -
    7:6
    -
    7:7
    -
    -
    - - From af586642abc4127f963dae59202cb7289c70e1c7 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 5 May 2026 22:37:23 +0200 Subject: [PATCH 44/49] togliendo i file errati --- .../html/viviani_esercizio_css_25.html | 17 ----------------- 1 file changed, 17 deletions(-) delete mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html deleted file mode 100644 index a4a0604f..00000000 --- a/TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - Esercizio 25 - - -
    One
    -
    The two boxes should float to either side of this text
    -
    Two
    - - - - - From 88cbd214d18ab461756135260220677546c44778 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 5 May 2026 22:37:35 +0200 Subject: [PATCH 45/49] togliendo i file errati --- .../html/viviani_esercizio_css_26.html | 15 --------------- 1 file changed, 15 deletions(-) delete mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html deleted file mode 100644 index 3eb9071b..00000000 --- a/TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - Esercizio 26 - - -
    -
    Float
    -

    This sentence appears next to the float.

    -
    - - From d246c59aec1e374ef18b59750218b758d1728410 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 5 May 2026 22:37:47 +0200 Subject: [PATCH 46/49] togliendo i file errati --- .../html/viviani_esercizio_css_27.html | 16 ---------------- 1 file changed, 16 deletions(-) delete mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html deleted file mode 100644 index 73c16f7f..00000000 --- a/TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - Esercizio 27 - - -
    Float
    - -

    This sentence appears next to the float.

    - -

    Cause this sentence to appear below the float.

    - - From f94a710c06dd72021a9acba6e87a9255f2a1e0d9 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 5 May 2026 22:40:00 +0200 Subject: [PATCH 47/49] aggiunti es 22-->27 css (.html) con i link giusti --- .../html/viviani_esercizio_css_22.html | 22 +++++ .../html/viviani_esercizio_css_23.html | 18 ++++ .../html/viviani_esercizio_css_24.html | 93 +++++++++++++++++++ .../html/viviani_esercizio_css_25.html | 17 ++++ .../html/viviani_esercizio_css_26.html | 15 +++ .../html/viviani_esercizio_css_27.html | 16 ++++ 6 files changed, 181 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html create mode 100644 TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html new file mode 100644 index 00000000..94c3d090 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_22.html @@ -0,0 +1,22 @@ + + + + + + + Esercizio 22 + + +
      +
    • Home
    • +
    • ATS
    • +
    • Servizi
    • +
    • Contatti
    • +
    • About
    • +
    + + + + + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html new file mode 100644 index 00000000..f22fb5a3 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_23.html @@ -0,0 +1,18 @@ + + + + + + + Esercizio 23 + + + + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html new file mode 100644 index 00000000..4f639e5c --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_24.html @@ -0,0 +1,93 @@ + + + + + + + Esercizio 24 + + +
    +
    +
    0:0
    +
    0:1
    +
    0:2
    +
    0:3
    +
    0:4
    +
    0:5
    +
    0:6
    +
    0:7
    +
    +
    +
    1:0
    +
    1:1
    +
    1:2
    +
    1:3
    +
    1:4
    +
    1:5
    +
    1:6
    +
    1:7
    +
    +
    +
    2:0
    +
    2:1
    +
    2:2
    +
    2:3
    +
    2:4
    +
    2:5
    +
    2:6
    +
    2:7
    +
    +
    +
    3:0
    +
    3:1
    +
    3:2
    +
    3:3
    +
    3:4
    +
    3:5
    +
    3:6
    +
    3:7
    +
    +
    +
    4:0
    +
    4:1
    +
    4:2
    +
    4:3
    +
    4:4
    +
    4:5
    +
    4:6
    +
    4:7
    +
    +
    +
    5:0
    +
    5:1
    +
    5:2
    +
    5:3
    +
    5:4
    +
    5:5
    +
    5:6
    +
    5:7
    +
    +
    +
    6:0
    +
    6:1
    +
    6:2
    +
    6:3
    +
    6:4
    +
    6:5
    +
    6:6
    +
    6:7
    +
    +
    +
    7:0
    +
    7:1
    +
    7:2
    +
    7:3
    +
    7:4
    +
    7:5
    +
    7:6
    +
    7:7
    +
    +
    + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html new file mode 100644 index 00000000..911e22c0 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_25.html @@ -0,0 +1,17 @@ + + + + + + + Esercizio 25 + + +
    One
    +
    The two boxes should float to either side of this text
    +
    Two
    + + + + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html new file mode 100644 index 00000000..dc17bfb9 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_26.html @@ -0,0 +1,15 @@ + + + + + + + Esercizio 26 + + +
    +
    Float
    +

    This sentence appears next to the float.

    +
    + + diff --git a/TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html b/TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html new file mode 100644 index 00000000..cc88ee50 --- /dev/null +++ b/TPSI/viviani_giorgio/html/viviani_esercizio_css_27.html @@ -0,0 +1,16 @@ + + + + + + + Esercizio 27 + + +
    Float
    + +

    This sentence appears next to the float.

    + +

    Cause this sentence to appear below the float.

    + + From 782c572c1918cb0c615da802e4f6fd66e5991298 Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 12 May 2026 09:21:58 +0200 Subject: [PATCH 48/49] css es 28 --- .../html/css/Viviani_esercizio_28.css | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/css/Viviani_esercizio_28.css diff --git a/TPSI/viviani_giorgio/html/css/Viviani_esercizio_28.css b/TPSI/viviani_giorgio/html/css/Viviani_esercizio_28.css new file mode 100644 index 00000000..e71cd7ce --- /dev/null +++ b/TPSI/viviani_giorgio/html/css/Viviani_esercizio_28.css @@ -0,0 +1,15 @@ +#child { + width: 150px; + float : left; + border: 1px solid black; +} + +.parents { + padding : 25px; + border: 20px solid rgba(70, 108, 170, 0.988); +} + +p { + border: 1px solid black; + text-transform: bold; +} \ No newline at end of file From 85838926f6095fc2898f2d224c9f133dbf72ee9e Mon Sep 17 00:00:00 2001 From: Viviani-Giorgio Date: Tue, 12 May 2026 09:22:50 +0200 Subject: [PATCH 49/49] es 28 html ( css) --- .../html/Viviani_es_28css.html | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 TPSI/viviani_giorgio/html/Viviani_es_28css.html diff --git a/TPSI/viviani_giorgio/html/Viviani_es_28css.html b/TPSI/viviani_giorgio/html/Viviani_es_28css.html new file mode 100644 index 00000000..cc74aea2 --- /dev/null +++ b/TPSI/viviani_giorgio/html/Viviani_es_28css.html @@ -0,0 +1,57 @@ + + + + + + + Document + + + + + + + + + + + + + + + + + +
    +
    + +

    TUX 1

    + +
    +
    +
    + +

    TUX 2

    + +
    +
    +
    + +

    TUX 3

    + +
    +
    +
    + +

    TUX 4

    + +
    +
    +
    + +

    TUX 5

    + +
    +
    + + \ No newline at end of file