Torna indietro   Hardware Upgrade Forum > Software > Programmazione

LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode
Hyper Mini LED con 2.304 zone, DisplayPort 2.1 e Dual Mode: 5K a 165 Hz oppure QHD a 330 Hz: LG propone un monitor da gioco ma dalla buona versatilità creativa, con prestazioni interessanti e un listino di 1.220 euro. Peccato l'alimentatore ingombrante
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio
Motorola edge 70 Fusion FIFA World Cup 26 Edition porta la maglia iridata su uno smartphone accessibile: display Extreme AMOLED da 6,78 pollici a 144Hz, fotocamera Sony LYTIA 710 con moto ai, Snapdragon 7s Gen 3 abbinato a 8GB di RAM, batteria da 5200 mAh con ricarica TurboPower a 68W e certificazione IP68/IP69, il tutto in una veste PANTONE Silhouette con logo dorato a 24 carati, moto buds bass incluse in confezione e contenuti software dedicati ai Mondiali 2026
Renault 5 elettrica al giudizio definitivo: solo stupore iniziale o premi meritati?
Renault 5 elettrica al giudizio definitivo: solo stupore iniziale o premi meritati?
Dopo più di un anno dal primo test drive ci siamo rimessi al volante della Renault 5 E-Tech Electric, questa volta utilizzandola come prima auto per circa due settimane. Scoprite con noi se il progetto convince ancora
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-01-2008, 15:48   #1
toonamix
Member
 
Iscritto dal: Jun 2006
Messaggi: 117
[PASCAL] Gestione Liste

Ragazzi io ho capito poco quanto niente sul funzionamento delle liste (anche un pò sulla logica non mi è chiara una parte dell'argomento)...

Comunque a fatica riesco a creare una procedura di inserimento e una di visualizzazione dei dati immessi...

Ma se dovessi fare in modo di cancellare un dato e collegare il dato precedente a quello eliminato al dato successivo a quello eliminato non so proprio farlo...come devo fare,o meglio come si fa?
So che chiedo tanto ma vorrei una mano per favore...

Qui allego un programma con procedura di inserimento dati e estrazione
Allegati
File Type: txt LISTA.txt (1.5 KB, 4 visite)
toonamix è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2008, 16:41   #2
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7263
guarda se questo codice ti può aiutare
http://snippets.dzone.com/posts/show/3253
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2008, 17:18   #3
toonamix
Member
 
Iscritto dal: Jun 2006
Messaggi: 117
Quote:
Originariamente inviato da k0nt3 Guarda i messaggi
guarda se questo codice ti può aiutare
http://snippets.dzone.com/posts/show/3253
nono ci capisco poco
toonamix è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2008, 10:23   #4
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7263
non ho un compilatore pascal installato, quindi non so nemmeno se compila comunque ho provato a dare una sistemata al tuo codice
Codice:
Program SJF;
uses crt;

nodo = record
  nomejob:string[19];
  tesec:real;
  succ:punt;
end;
type punt = ^nodo;

var testa:punt;

Procedure inserisciLavoro(nome: string[19], tempo: real);
var el, cur, prec: punt;
begin
  new(el);
  el^.nomejob := nome;
  el^.tesec := tempo;
  
  cur = testa;
  while (cur<>nil) and (cur^.tesec<tempo) do
  begin
    prec:=cur;
    cur:=cur^.succ;
  end;

  el^.succ:=cur;
  if cur=testa then
    begin
      testa:=el;
    end
  else
    begin
      prec^.succ:=el;
    end;
end;

Procedure rimuoviLavoro(nome: string[19]);
var cur, prec: punt;
begin
  cur = testa;
  if (cur^.nomejob = nome)
    begin
      testa = testa^.succ;
      dispose(cur);
    end;
  else
    begin
      prec:=cur;
      cur:=cur^.succ;
      while (cur<>nil) do
      begin
	if (cur^.nomejob = nome)
	  begin
	    prec^.succ = cur^.succ;
	    dispose(cur);
	  end;
	prec:=cur;
	cur:=cur^.succ;
      end;
    end
end;

Procedure inserisci;
var tempo:real;
    nome:string[19];
Begin
  Writeln ('Inserisci il nome del lavoro ');
  readln (nome);
  Writeln (' Inserisci il tempo necessario all esecuzione del lavoro ',nome);
  readln (tempo);
  clrscr;
  InserisciLavoro(nome, tempo);
end;

Procedure rimuovi;
var nome:string[19];
Begin
  Writeln ('Inserisci il nome del lavoro ');
  readln (nome);
  clrscr;
  RimuoviLavoro(nome);
end;

Procedure visualizza;
var risp:char;
Begin
  clrscr;
  if testa=nil then
    Begin
      writeln ('La lista e' vuota!!!!!!');
      readln;
      clrscr;
    end
  else
    begin
      while testa<>nil do
	begin
	writeln(testa^.nomejob);
	testa:=testa^.succ;
	end;
      readln;
      clrscr;
    end;
end;

Procedure elenco;
var risp:char;
Begin
  repeat
    clrscr;
    Writeln ('Cosa vuoi fare? ');
    Writeln ('A: Inserisci un lavoro');
    Writeln ('B: Visualizza il lavoro in ordine di esecuzione');
    Writeln ('C: Elimina un lavoro');
    readln(risp);
    case risp of
      'a' : inserisci;
      'b' : visualizza;
      'c' : rimuovi;
    end;
    Writeln ('Vuoi svolgere un altra operazione? s/n');
    readln (risp);
    clrscr;
   until (risp='n') or (risp='N');
end;

Begin
   elenco;
End.
se hai dubbi chiedi pure. come vedi ho separato la logica del programma dalla sua presentazione.. ti consiglio di fare sempre così
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e...
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio Motorola edge 70 Fusion FIFA World Cup 26 Editio...
Renault 5 elettrica al giudizio definitivo: solo stupore iniziale o premi meritati? Renault 5 elettrica al giudizio definitivo: solo...
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix HONOR CHOICE Projector Air Pro: piccolo, portati...
ASUS ProArt GoPro Edition è il notebook compatto per chi crea ASUS ProArt GoPro Edition è il notebook c...
Oltre 1.500 miliardi di dollari: il merc...
'Sorry, typo': l'IA cancella tutto il pr...
The Legend of Zelda sarà l'ultima...
NVIDIA CMP 170 HX: il mining l'aveva abb...
Philips Shaver S9000 a 181,99€: il rasoi...
Samsung Galaxy S26 FE si mostra nei prim...
Il nuovo sensore da 200MP di Samsung è m...
Clamoroso ritorno in Ubisoft: ecco chi d...
1600W, tecnologia GaN, display LCD e fin...
Addio Google Translate? Questo traduttor...
Honor al lavoro sul nuovo MagicPad: in a...
Blue Origin rende note le cause dell'esp...
Le prime AirPods con fotocamere e IA pot...
I dati della sonda spaziale NASA New Hor...
Si sposta su quattro zampe e impugna una...
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: 20:23.


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