DOMANDA VB2010 Velocita Array vs Variabili

Filippo90

Utente Attivo
212
1
CPU
i7 950
Scheda Madre
Gigabyte X58-USB3
HDD
SSD 180 GB + HD 2 TB + HD 3 TB
RAM
Corsair Vengance 12GB 1600mhz
GPU
R9 280X Toxic
Monitor
ASUS VW220TE 22" Widescreen
PSU
Corsair 850w
Case
Cooler Master Centurion II Advanced
OS
Windows 7 x64
perciò non dovresti sommare il primo con il primo, ma il primo con il secondo, fino al penultimo con l'ultimo, l'ultimo non lo consideriamo. O sbaglio?

Ma poi te confronti con x, anche solo la somma Num[1]+Num[2] e poi Num[1]+Num[2]+2 perchè hai detto due cose diverse in due post diversi...

Esatto, alla fine sommero
num[47]+num[48]+1 fino a 100
num[47]+num[49]+1 fino a 100
num[47]+num[50]+1 fino a 100
num[48]+num[49]+1 fino a 100
num[48]+num[50]+1 fino a 100
num[49]+num[50]+1 fino a 100

Ora utilizzo un sumplice Array, quello dell'esempio è il codice di un Array multidimensionale che non ho usato nel programma.

Ti passo il codice via PM ma come vedi è come abbiamo detto noi, gia è semplice, piu di cosi non so come ottimizzarlo
 
D

deleted_98961

Ospite
Esatto, alla fine sommero
num[47]+num[48]+1 fino a 100
num[47]+num[49]+1 fino a 100
num[47]+num[50]+1 fino a 100
num[48]+num[49]+1 fino a 100
num[48]+num[50]+1 fino a 100
num[49]+num[50]+1 fino a 100
ok allora lo pseudo-codice che ho scritto fa esattamente questo con P=[1,100]

all'inizio di tutto avevi scritto ben altro, per quello avevo fatto quei calcoli e detto che si poteva semplificare questa operazione.

Ora utilizzo un sumplice Array, quello dell'esempio è il codice di un Array multidimensionale che non ho usato nel programma.
Numeri() è il vettore dei numeri attuali cioè quello da 50, o è l'intero array con tutti i numeri memorizzati?

Codice:
For y = j To j 'j + 4             
      For k = m To m 'm + 4

gli estremi son corretti?

Ti passo il codice via PM ma come vedi è come abbiamo detto noi, gia è semplice, piu di cosi non so come ottimizzarlo
sì ho dato un'occhiata, è più complesso di quanto hai scritto. Cioè ci sono operazioni che solo te ne conosci il motivo e risultato :)
Forse si potrebbero togliere qualche confronto, ma solo te puoi farlo non sapendo io cosa operano se c'è un cambiamento nel codice. Pensavo fosse diverso...

L'unica cosa che ad occhio direi si potrebbe semplificare è quella sfilza di confronti legati con degli OR. Non cambia la complessità, ma si può semplificare alla fine, ma son piccolezze.

Perciò per questo pezzo: se il codice che hai scritto fa ciò che il pezzo di pseudo-codice esprime, allora più stringato di così non si può scrivere.
l'ottimizzazione di memorizzare nella variabile temp lo fai già con variabile Somma, poi il resto rende il tutto più complicato e non posso dir nulla.


Ora se vuoi si può vedere la struttura dati che utilizzi per memorizzare i record e la struttura lista. Che implicherà vedere che tipo di ricerca tu faccia, forse è in questa parte si può sistemare maggiormente.

Prova a fare un mini-schema di cosa è un elemento della lista e cosa contiene, e come sono legati i vari elementi. Per capirci quale degli schemi classici utilizzi (v. Linked list - Wikipedia, the free encyclopedia).


se vorrai siam qui :)
 

Filippo90

Utente Attivo
212
1
CPU
i7 950
Scheda Madre
Gigabyte X58-USB3
HDD
SSD 180 GB + HD 2 TB + HD 3 TB
RAM
Corsair Vengance 12GB 1600mhz
GPU
R9 280X Toxic
Monitor
ASUS VW220TE 22" Widescreen
PSU
Corsair 850w
Case
Cooler Master Centurion II Advanced
OS
Windows 7 x64
Numeri() è il vettore dei numeri attuali cioè quello da 50, o è l'intero array con tutti i numeri memorizzati?

Contiene la riga del file di testo, numeri(1) esprime il primo numero della riga x caricata in precedenza. Si è quello da 50 facendo riferimento alla domanda!

For y = j To j 'j + 4
For k = m To m 'm + 4

Questo è un passaggio inutile, ma che ho corretto. Perche avevo provato con questi due cicli e
fare tutto insieme, ossia fargli sommare i valori con 1 -> 100



E' che capisco sia diffile dalla tua parte comprendere il codice di un programma, ma come vedi dal codice via PM, richiama tramite "call" altre subroutine. Questa è una delle operazioni basi, su cui poi verranno effettuati gli altri calcoli, piu avanti ne ho altre piu complesse.

Rimane difficile a me spiegare in un post tutto l'intero programma mi servirebbero pagine, sono circa 20.000 righe di codice in totale nel progetto!

Grazie per l'assistenza!
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!