An open API service indexing awesome lists of open source software.

https://github.com/matbagnoletti/unipgtutoraggioeq2grado

Esercizio di tutoraggio svolto durante il corso di Programmazione Procedurale del primo anno di Informatica presso l'Università degli Studi di Perugia.
https://github.com/matbagnoletti/unipgtutoraggioeq2grado

c gcc

Last synced: 11 months ago
JSON representation

Esercizio di tutoraggio svolto durante il corso di Programmazione Procedurale del primo anno di Informatica presso l'Università degli Studi di Perugia.

Awesome Lists containing this project

README

          

UniPG - Tutoraggio: esercizio equazioni di 2° grado

Made by @matbagnoletti


Corso di Programmazione Procedurale I° anno a.a. 2024/2025, UniPG - DMI



Ultimo commit
Linguaggio

## Descrizione
Esercizio di tutoraggio svolto durante il corso di Programmazione Procedurale del primo anno di Informatica presso l'Università degli Studi di Perugia.

## Requisiti
- [gcc](https://www.gcc.gnu.org/) (v13.2.0)

È possibile visualizzare la versione già presente sul proprio dispositivo mediante il seguente comando:
```bash
gcc -v
```

## Richiesta dell'esercizio
Si realizzi un programma in linguaggio C per risolvere equazioni di secondo grado.
In particolare, data una generica equazione di secondo grado nella forma ax² + bx + c = 0,
dove a, b, c sono coefficienti reali noti (valori di tipo double passati da tastiera con scanf()) e x
rappresenta l’incognita, il programma determini le due radici x₁ ed x₂ dell’equazione data, ove esse esistano.

Si identifichino tutti i casi particolari, come:


  • a == 0

  • ∆ == 0

  • ∆ < 0

  • ∆ > 0


stampando opportuni messaggi informativi.

Tramite la soluzione proposta si verifichi che il programma sia in grado di risolvere correttamente i seguenti scenari:


  • Se a == 0, l'equazione è di primo grado. Se, inoltre,b == 0, allora l’equazione ammette infinite soluzioni.

  • Se b! = 0, allora l’unica soluzione vale −c ÷ b

  • Se ∆ == 0, l'equazione ha due soluzioni coincidenti.

  • Se ∆ < 0, l'equazione non ha soluzioni reali.

  • Se ∆ > 0, l'equazione ha due soluzioni reali distinte.

Il file eseguibile della soluzione proposta dovrà presentarsi nel formato ``.

## Soluzione proposta
Il programma richiede all'utente di inserire i coefficienti a, b e c dell'equazione di secondo grado.
Successivamente, il programma calcola il discriminante e, in base al suo valore, determina le soluzioni dell'equazione.
Apposite funzioni, come `stampaEqSanificata()` ed `eliminaZeri()`, sono state create per stampare l'equazione in un formato naturale e per eliminare eventuali zeri superflui.

## Installazione e utilizzo
Per poter utilizzare il programma, è necessario seguire i seguenti passaggi:
1. Effettua il clone della repository con il comando:
```bash
git clone https://www.github.com/matbagnoletti/UniPGTutoraggioEq2Grado.git
```
In alternativa, effettua il download del file compresso del progetto ed estrailo in una cartella locale del tuo computer.
2. Nel terminale, spostati nella cartella del progetto:
```bash
cd UniPGTutoraggioEq2Grado
```
3. Compila il codice sorgente:
```bash
gcc main.c -o [eseguibile] -lm
```
4. Esegui il programma:
```bash
./[eseguibile]
```