Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Tra audio e AI: la ricetta di Qualcomm per l'agentic AI
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI
Snapdragon Soung Gen 2 è la piattaforma Qualcomm per i dispositivi audio sempre più integrati nel mondo dell'intelligenza artificiale: al prorpio interno tanta potenza elaborativa per gestire al meglio le necessità d'uso dell'agentic AI
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6
In occasione del proprio Snapdragon Summit Qualcomm annuncia i due nuovi chip per dispositivi mobile di fascia alta che entreranno nel mercato nel corso del 2027: tanta potenza a disposizione per elaborazioni di intelligenza artificiale sempre più complesse
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole!
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole!
Hogwarts arriva in fascia media grazie a realme, con una special edition che unisce la Quadra Light-Sensing Color-changing Tech, un baule in stile Hogwarts Express pieno di collezionabili e una scheda tecnica sostanzialmente identica al 16 Pro di partenza: ecco cosa cambia davvero, come si comporta nell'uso quotidiano e quanto vale in base al prezzo di 699,99 euro
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-03-2006, 22:20   #1
casacup
Senior Member
 
Iscritto dal: Feb 2006
Città: AQ
Messaggi: 2787
[C++]tutorial su liste, a livello di informatica 1

ciao a tutti!
tra qualche giorno ho l'esame di fondamenti di informatica 1, ed ho un grosso problema perchè ho lasciato il manualone di c++ a casa di un mio amico e non posso andarlo a riprendere (firenze, ed io sono ad aq...).

siccome ho qualche problemino per le liste volevo chiedere se qualcuno di voi conosce un qualche tutorial livello base per queste: so che in rete se digito liste c++ trovo sto mondo e quell'altro, ma io sto preparando informatica 1, quindi di template, classi e altra roba non so niente, e la sintassi del c++ che conosco è davvero limitata (primo esame di informatica...).

potete aiutarmi? le cose che devo riuscire a fare sono le classiche: saltare un elemento, aggiungere un elemento in testa/coda, stampare una lista al contrario o solo elementi con determinati paramentri....


grassie a chiunque mi aiuterà
__________________
Acer 3820TG
Codice:
Ho venduto a: 23answer23, clamasa, salsero71, nik4, lollo_79, Star, krystis, tari80, BananaFlanders, froZZen, Perfavore83, Holy_knight; Ho comprato da: kikki2, ThE cX MaN, PantWeb, robby85, aldarev, markese, Drago, NLDoMy, Hells, Dragonx21, axlaxl, Homer314, e tanti tanti altri :)
casacup è offline   Rispondi citando il messaggio o parte di esso
Old 24-03-2006, 23:20   #2
mr_hyde
Senior Member
 
Iscritto dal: Oct 2005
Città: Genova
Messaggi: 937
Scusami, forse sarebbe utile una piccola chiarificazione su cosa intendi per "liste":
1) utilizzo delle STL std::list
2) devi creare tu le funzioni per l'allocazioe/de-allocazione degli elementi, gestire i singoli nodi della lista


Questo giusto per capire se ti serve un tutorial sull'uso delle STL (Standard Template Library) oppure un qualcosa di piu' generico sulle strutture dati in generale.

Ciao,
Mr Hyde
__________________
MacMini Late 2009/MacMini 2018
mr_hyde è offline   Rispondi citando il messaggio o parte di esso
Old 25-03-2006, 00:36   #3
casacup
Senior Member
 
Iscritto dal: Feb 2006
Città: AQ
Messaggi: 2787
mmm direi la seconda...metto un esempio di programma del tipo carica lista stampa lista

Quote:
#include<iostream>
#include<stdlib.h>
using namespace std;

struct elemento {
int valore;
elemento *succ;
};

int main ()
{
elemento *p;
elemento *p1;
int dim;

p=new elemento;
p1=p;

cout<<"inserisci la grandezza della lista ";
cin>>dim;
cout<<"inserisci il valore dell'elemento 0 ";
cin>>p1->valore;
for (int i=1; i<dim; i++)
{
p1->succ=new elemento;
p1=p1->succ;
cout<<"inserisci il valore dell'elemento "<<i<<" ";
cin>>p1->valore;
}

p1->succ=NULL;
p1=p;

cout<<"gli elementi inseriti sono: "<<endl;
while (p1!=NULL)
{
cout<<p1->valore<<" ";
p1=p1->succ;
}
system ("pause");
return 0;
}
per lista intendo uno struct del quale il primo campo è un campo qualsiasi (char, string, int, un altro struct, insomma qualsiasi cosa) ed il secondo campo è un puntatore del tipo elemento, dove elemento è proprio lo struct che ho creato.

il puntatore p è il puntatore che mi serve per memorizzare il primo oggetto (lo chiamo così perchè le parola "elemento", seppur adatta, porterebbe alla confusione col nome della struct) della lista, mentre il puntatore p è il puntatore che, di volta in volta, punta ad i vari oggetti della lista...

sono riuscito a spiegarmi?

ps le stl non so neanche cosa siano... ma è sicuro qualcosa che, al momento, non devo studiare (e questo mi basta )
__________________
Acer 3820TG
Codice:
Ho venduto a: 23answer23, clamasa, salsero71, nik4, lollo_79, Star, krystis, tari80, BananaFlanders, froZZen, Perfavore83, Holy_knight; Ho comprato da: kikki2, ThE cX MaN, PantWeb, robby85, aldarev, markese, Drago, NLDoMy, Hells, Dragonx21, axlaxl, Homer314, e tanti tanti altri :)
casacup è offline   Rispondi citando il messaggio o parte di esso
Old 25-03-2006, 00:57   #4
mr_hyde
Senior Member
 
Iscritto dal: Oct 2005
Città: Genova
Messaggi: 937
OK, capito. Guardo se nei miei bookmark c'e' qualcosa che ti puo' essere utile (ma ahime' non credo)

Per le STL: sono una libreria di contenitori vari (tra cui le liste) che fanno uso dei template.

In pratica hai gia' le liste belle e pronte (e non solo le liste) con tutte le loro funzioncine per "maneggiarle".

Ad esempio, supponi di avere fatto la classe CPersona che contiene come attributi i dati anagrafici: sedevi creare una dista di persone ti bastera' dichiarare

std::list<CPersona> listaPersone;

e ovviamente hai tutti i metodi per aggiungere/togliere elementi dalla lista.
Altra cosa utilissima sono gli iteratori che ti permettono di "scorrere" tutti gli elementi della lista (ma esistono anche per tutti gli altri contenitori messi a disposizione dalle STL) e di operare su questi.

E ancora STL mettono a disposizione metodi per eseguire una determinata operazione su tutti gli elementi di una lista, evitandoti cosi' di scrivere il solito ciclo di scorrimento e di richiamo dell'operazione sul singolo elemento.

Insomma: nella programmazione "seria" SONO DA USARE. Capisco che ora tu abbia solo interessi "studenteschi" (leggi: superare l'esame) ma mi sembrava comunque giusto dirti della loro esistenza (anche se trovo grave che un corso sul C++ non affronti l'argomento... Oppure hai saltato qualche lezione? :-) )

Ciao,
Mr Hyde
__________________
MacMini Late 2009/MacMini 2018
mr_hyde è offline   Rispondi citando il messaggio o parte di esso
Old 25-03-2006, 01:29   #5
casacup
Senior Member
 
Iscritto dal: Feb 2006
Città: AQ
Messaggi: 2787
nono, guarda io voglio approfondire ed imparare per bene...ma ora l'obbiettivo è l'esame
stl e classi ancora non le affronto...ma perchè non sono in programma!
sto facendo ingegneria informatica, primo anno, e questo è il primo esame di infromatica che c'è, quindi ce ne sarà di tempo per fare il resto...

ps se vuoi renderti conto di quale sia il programma per capire le mie "esigenze" ti posto il programma del corso

Quote:


Fondamenti di informatica I (corso di laurea in Ingegneria Informatica - Automatica)

Docenti: Eliseo Clementini

Collegamenti culturali e finalità del corso

Il corso è finalizzato all'acquisizione dei concetti fondamentali dell'informatica, senza trascurare gli aspetti sperimentali della disciplina e la sua applicazione immediata. Si inizia con una descrizione del sistema informatico nella sua interezza, dalla rappresentazione dell'informazione ai software applicativi, per poi concentrarsi sulle tecniche di programmazione ad alto livello, con lo scopo di far maturare negli studenti l'abilità a progettare programmi e metterli in grado allo stesso tempo di utilizzare in maniera attenta e consapevole il software già esistente. Il linguaggio di riferimento sarà il C++, anche se i concetti presentati nel corso sono indipendenti dal linguaggio e facilmente applicabili in qualsiasi linguaggio imperativo come C o Pascal. Il corso è propedeutico per seguire il corso di Fondamenti di Informatica II.
Programma

1. Architettura dei sistemi informatici ([1], cap. 1-2).
Processi e processori. Problemi, algoritmi e programmi. Linguaggi di programmazione. Hardware e software: descrizione e classificazione. Architettura del calcolatore. Modello di von Neumann. Sistemi numerici posizionali a base fissa. Conversioni di base. Rappresentazione di numeri negativi in modulo e segno e in complemento a due. Rappresentazione di numeri reali in virgola mobile normalizzata. Codice ASCII. Algebra di Boole e principali funzioni logiche. Ambienti di programmazione Dev-C++ e Borland C++ Builder.

2. Elementi di programmazione ([1], cap. 1-2).
Sviluppo di algoritmi. Concetto di variabile. Operazioni elementari: lettura, scrittura, assegnazione e confronto. Diagrammi di flusso. Pseudo-codice. Struttura di controllo se-allora-altrimenti. Cicli con pre-condizione e post-condizione. Strutture di controllo finché-esegui e esegui-finché. Progettazione di algoritmi con cicli. Controllo sui dati di input. Traduzione in C++. Costrutti base del C++. Struttura di un programma. Parte dichiarazioni e parte istruzioni. Dichiarazione di variabili. Classificazione dei tipi. Tipi semplici, rappresentazione interna e operazioni. Espressioni numeriche e condizionali. Istruzione di assegnazione. Istruzione composta. Selezione binaria. Funzioni standard di ingresso/uscita. Istruzioni cicliche (WHILE, DO-WHILE, FOR). Costruzione di cicli annidati. Selezione n-aria.

3. Programmazione con tipi strutturati ([1], cap. 3, escluso 3.5 e 3.6; cap. 6; cap. 7, fino a 7.4).
Tipo array: definizione e rappresentazione in memoria. Dichiarazioni di tipo con typedef. Programmi su vettori. Array bidimensionali. Programmi su matrici. Tipo string. Tipo struct. Tipo file. Primitive per la gestione sequenziale dei files.

4. Aspetti avanzati di programmazione ([1], cap. 4, escluso 4.3.4; cap. 8, escluso 8.4 e 8.6; cap. 9, fino a 9.2.4).
Sottoprogrammi. Progettazione top-down. Parametricità. Dichiarazione di funzioni. Variabili globali. Variabili locali. Parametri formali e attuali. Passaggio di parametri per riferimento e per valore. Uso della memoria. Ciclo di vita delle variabili. Visibilità delle variabili. Mascheramento di variabili. Ricorsione. Gestione statica e gestione dinamica della memoria. Tipo puntatore. Operazioni con puntatori: assegnazione, new, delete, riferimento, dereferenziazione. Costante null. Uso dei puntatori. Creazione dinamica di array. Similitudine tra array e puntatori. Creazione dinamica di matrici. Strutture collegate in memoria dinamica. Liste collegate con puntatori. Programmi su liste collegate.
__________________
Acer 3820TG
Codice:
Ho venduto a: 23answer23, clamasa, salsero71, nik4, lollo_79, Star, krystis, tari80, BananaFlanders, froZZen, Perfavore83, Holy_knight; Ho comprato da: kikki2, ThE cX MaN, PantWeb, robby85, aldarev, markese, Drago, NLDoMy, Hells, Dragonx21, axlaxl, Homer314, e tanti tanti altri :)
casacup è offline   Rispondi citando il messaggio o parte di esso
Old 25-03-2006, 18:50   #6
casacup
Senior Member
 
Iscritto dal: Feb 2006
Città: AQ
Messaggi: 2787
nessuno mi aiuta?

l'esame è mercoledì... e lunedì ho pure fisica
__________________
Acer 3820TG
Codice:
Ho venduto a: 23answer23, clamasa, salsero71, nik4, lollo_79, Star, krystis, tari80, BananaFlanders, froZZen, Perfavore83, Holy_knight; Ho comprato da: kikki2, ThE cX MaN, PantWeb, robby85, aldarev, markese, Drago, NLDoMy, Hells, Dragonx21, axlaxl, Homer314, e tanti tanti altri :)
casacup è offline   Rispondi citando il messaggio o parte di esso
Old 25-03-2006, 20:55   #7
mr_hyde
Senior Member
 
Iscritto dal: Oct 2005
Città: Genova
Messaggi: 937
Visto quello che hai scritto direi che ti servono 2 tipi di corsi/guide:
1) sulla sola sintassi C++ (insomma, il C++ di base)
2) su algoritmi e strutture dati.

Per il primo tipo ho trovato

http://www.math.unipd.it/~sperduti/C...orso%20C++.htm

(occhio pero': mi sembrava di aver visto esempi con una versione di C++ "datata")

Per il secondo tipo:
http://www.alessioluffarelli.it/guid...eri_binari.php (per gli alberi binari, nel caso prima o poi ne avessi bisogno)

Un po' di tutto:
http://programmiamo.blogspirit.com/a...ammazione.html

Questi li ho semplicemente trovati con google cercando "tutorial strutture dati".
Non voglio bacchettarti: capisco che nel tuo caso forse non sai ancora quali sono i termini da usare per le ricerche.
Spero comunque che 'sta roba ti possa essere utile (certo che anche tu dare fisica attaccato a fondamenti... :-) )

Ciao,
Mr Hyde
__________________
MacMini Late 2009/MacMini 2018
mr_hyde è offline   Rispondi citando il messaggio o parte di esso
Old 26-03-2006, 09:07   #8
casacup
Senior Member
 
Iscritto dal: Feb 2006
Città: AQ
Messaggi: 2787
eheh... purtroppo non sono io che decido, nella sessione di marzo ci sono due appelli per tre esami, ed analisi ho bisogno di un pò + di tempo per studiarmela


cmq grazie mille per le info, questa sera mi spulcio un pò sti link e ti faccio sapere

ps gli alberi binari credo siano di informatica due...
__________________
Acer 3820TG
Codice:
Ho venduto a: 23answer23, clamasa, salsero71, nik4, lollo_79, Star, krystis, tari80, BananaFlanders, froZZen, Perfavore83, Holy_knight; Ho comprato da: kikki2, ThE cX MaN, PantWeb, robby85, aldarev, markese, Drago, NLDoMy, Hells, Dragonx21, axlaxl, Homer314, e tanti tanti altri :)
casacup è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Tra audio e AI: la ricetta di Qualcomm per l'agentic AI Tra audio e AI: la ricetta di Qualcomm per l'age...
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6 Qualcomm annuncia la nuova generazione di SoC Sn...
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole! realme 16 Pro Harry Potter Edition: il nuovo mid...
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Xiaomi 18 Pro e 18 Pro Max, i nuovi flag...
ESA e Mistral hanno stretto un accordo p...
AstroForge presenta Autonomy-1: un satel...
Neutralizzata da Microsoft EvilTokens, l...
Porsche mette alla prova i Tesla Superch...
Roborock Saros 20 Flow Complete arriva i...
Basta un comando digitato nel terminale ...
La corsa alla superintelligenza è...
Le memorie cinesi sfidano sé stes...
Dash cam 4K con doppia telecamera, GPS, ...
Qwen 4: Alibaba conferma l'addestramento...
Super El Niño, allarme globale: 451.000 ...
Toyota, 400.000 robot in fabbrica senza ...
Hanno bucato l'FBI e ora dettano le cond...
Standard sì, licenze no: la linea di Ope...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 04:13.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v