Anteprima
Vedrai una selezione di 3 pagine su 7
Progetto Gestione archivio di dischi Pag. 1 Progetto Gestione archivio di dischi Pag. 2
Anteprima di 3 pagg. su 7.
Scarica il documento per vederlo tutto.
Progetto Gestione archivio di dischi Pag. 6
1 su 7
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

Progetto Gestione archivio di dischi

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "header.h"

/*Benvenuti nella gestione dischi. Questo programma si occupa di gestire un archivio di dischi,
con delle specifiche categorie, permettendoci di:
1: Inserire un nuovo disco in una categoria a scelta,
2: Eliminare un disco in base al titolo, in una delle categorie scelte,
3: Riportarci il titolo del disco con minor prezzo all'interno di una categoria*/

//Nel main richiamiamo le funzioni.
void main(){
    categoria generi[n];
    int dischiInseriti[n] = {0,0,0,0};
    int scelta;
    int i_categoria;
    float PrezzoMin;
    InizializzaCategorie(generi);
    do{
        //Do che ci permette di eseguire tramite uno switch ed un while delle determinate operazioni
        printf("\nCosa vuoi fare?\n\n");
        printf("1.Visualizza inventario\n");
        printf("2.Inserisci un disco\n");
        printf("3.Elimina un disco\n");
        printf("4.Disco con minor prezzo all'interno di una categoria\n");
        
"); printf("5.Esci dall'archivio\n\n"); printf("Scelta: "); scanf("%d", &scelta); switch(scelta){ //switch per la scelta di un'operazione case 1: VisualizzaDischi(generi, dischiInseriti); break; case 2: InserisciDisco(generi, dischiInseriti); break; case 3: EliminaDisco(generi, dischiInseriti); break; case 4: printf("Di quale categoria vuoi il disco col prezzominore?\n1.Rock\n2.Punk\n3.Jazz\n4.House\n\nscelta: "); scanf("%d", &i_categoria); PrezzoMin = PrezzoMinoreRicorsivo(generi, dischiInseriti[i_categoria-1], i_categoria); printf("%f", PrezzoMin); break; default: printf("Hai sbagliato a digitare, riprova!"); } }while(scelta != 5); /*fintanto che scegliamo un numero diverso da 5, restiamo nel programma. Qualora scegliessimo 5, saremmo in grado di uscire da tale programma*/ #include <stdio.h> #include <stdlib.h> #include <string.h> #define n 4 //numero categorie #define m 6 //numero dischi Formattazione del testo

per categoria//Nell'header.h andremo a dichiarare le varie funzioni per poi andare nell'header.c, riportarle e definire la loro funzione

typedef struct{
    char titolo[30];
    char autore[30];
    float prezzo;
} disco;

typedef struct{
    int codice;
    char nomeGenere[15];
    disco dischi[m];
} categoria;

void InizializzaCategorie(categoria*);
void VisualizzaDischi(categoria*, int*);
void InserisciDisco(categoria*, int*);
void EliminaDisco(categoria*, int*);
float minimo(float, float);
float PrezzoMinoreRicorsivo(categoria*, int, int);
int IndiceDiscoPrezzoMinore(categoria*, float, int);

header.c

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "header.h"

void InizializzaCategorie(categoria*

genere){
    genere[0].codice = 1;
    strcpy(genere[0].nomeGenere, "Rock");
    genere[1].codice = 2;
    strcpy(genere[1].nomeGenere, "Punk");
    genere[2].codice = 3;
    strcpy(genere[2].nomeGenere, "Jazz");
    genere[3].codice = 4;
    strcpy(genere[3].nomeGenere, "House");
}

//funzione per visualizzare i dischi all'interno di una categoria
void VisualizzaDischi(categoria* genere, int* sizeDischi){
    int i, j;
    for(i=0; i
Il testo formattato con i tag HTML è il seguente:

categorie.

  1. Rock
  2. Punk
  3. Jazz
  4. House

scelta: ");scanf("%d%*c", &sceltaCategorie);printf("\n");//if per confrontare se la categoria scelta è vuota, nel caso ci permette di inserire dischiif(sizeDischi[sceltaCategorie-1] == 0){printf("Inserisci nome del disco: ");gets(genere[sceltaCategorie-1].dischi[0].titolo);printf("Inserisci nome dell'autore: ");gets(genere[sceltaCategorie-1].dischi[0].autore);printf("Inserisci il prezzo del disco: ");scanf("%f%*c", &genere[sceltaCategorie-1].dischi[0].prezzo);sizeDischi[sceltaCategorie-1]++;}//else if per confrontare se la categoria contiene un numero di dischi inferiore ad m(numero dei dischi)else if(sizeDischi[sceltaCategorie-1] < m){printf("Inserisci nome del disco: ");gets(genere[sceltaCategorie-1].dischi[sizeDischi[sceltaCategorie-1]].titolo);printf("Inserisci nome dell'autore:

");gets(genere[sceltaCategorie-1].dischi[sizeDischi[sceltaCategorie-1]].autore);printf("Inserisci il prezzo del disco: ");scanf("%f%*c", &genere[sceltaCategorie-1].dischi[sizeDischi[sceltaCategorie-1]].prezzo);
Dettagli
A.A. 2021-2022
7 pagine
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher giovy0987dimauro di informazioni apprese con la frequenza delle lezioni di Programmazione I e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Napoli - Parthenope o del prof Giunta Giulio.