Vai al contenuto

Primario: Sky Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Secondario: Sky Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Sfondo: Blank Waves Squares Notes Sharp Wood Rockface Leather Honey Vertical Triangles
Corsi di Laurea










ROX @ Unisa - Forum degli studenti di Ingegneria utilizza i cookie. Se prosegui la navigazione accetti il loro uso.    Accetto l'uso dei cookie
-->
Foto

help spiegazione esercizio


  • Effettua l'accesso per rispondere
Questa discussione ha avuto 8 risposta/e

#1
quasar

quasar

    Advanced Member

  • Utente
  • StellaStellaStella
  • 50 Messaggi:
qualcuno puo' spiegarmi questo esercizio,non ho ben compreso lo svolgimento.

Dato un vettore di numeri interi scrivere una
funzione che :
Memorizzi in un primo vettore di uscita solo
i numeri pari
Memorizzi in un secondo vettore di uscita
solo i numeri dispari
Esempio
vin=[1,2,33,11,8]
pari=[2,8] dispari=[1,33,11]

function[pari,dispari]=esercizio7(v)
n=length(v);
indice_pari=1;
indice_dispari=1;
for i=1:n
if mod(v(i),2)==0
pari(indice_pari)=v(i);
indice_pari=indice_pari+1;
else
dispari(indice_dispari)=v(i);
indice_dispari=indice_dispari+1;
end
end
end




#2
peppepeppo

peppepeppo

    Moderatore di sezione

  • Moderatore
  • 2474 Messaggi:
L' esercizio è corretto, per quanto riguarda la spiegazione dello svolgimento leggi questo thread, si parla di un esercizio quasi identico.

#3
quasar

quasar

    Advanced Member

  • Utente
  • StellaStellaStella
  • 50 Messaggi:
dim rappresenta tuta la dimensione della matrice???
che differenza c'è con size

#4
peppepeppo

peppepeppo

    Moderatore di sezione

  • Moderatore
  • 2474 Messaggi:

dim rappresenta tuta la dimensione della matrice???
che differenza c'è con size

Dove hai letto dim?

#5
quasar

quasar

    Advanced Member

  • Utente
  • StellaStellaStella
  • 50 Messaggi:
su una prova vecchia

#6
quasar

quasar

    Advanced Member

  • Utente
  • StellaStellaStella
  • 50 Messaggi:
% ESAME DI FONDAMENTI DI INFORMATICA
%
% Data una matrice con 6x6 interi generati a caso. Il candidato deve
% implementare le seguenti funzioni.
%
% 1) Calcolare la somma di tutti gli elementi della diagonale principale e
% la somma di tutti gli elementi della diagonale secondaria della matrice m.
% Il prototipo della funzione è il seguente:
% function [somma_d1, somma_d2]=somme_diagonali(m);
%
% 2) Salvare in un file il cui nome è fornito come parametro in input alla funzione,
% la matrice e i due numeri calcolati con la funzione precedente.
% Il prototipo della funzione è il seguente:
% function salva_dati(m, n1, n2, nome_file);
%
% ESEMPIO DI ESECUZIONE DEL PROGRAMMA
% La matrice A quadrata generata a caso è:
% 8 18 54 40 41 33
% 39 26 14 7 4 90
% 25 14 85 23 90 36
% 80 13 62 12 94 11
% 43 86 35 18 49 78
% 91 57 51 23 48 38
% Nella matrice A la somma degli elementi della diagonale principale vale 218
% Nella matrice A la somma degli elementi della diagonale secondaria vale 299
% Inserire il nome del file: out.txt
% Il file out.txt è stato salvato.
%
% ESEMPIO DI CONTENUTO DEL FILE SALVATO (out.txt):
% 8 18 54 40 41
% 39 26 14 7 4
% 25 14 85 23 90
% 80 13 62 12 94
% 43 86 35 18 49
% 91 57 51 23 48
% Somma diagonale principale = 218
% Somma diagonale secondaria = 299
% COMPLETARE IL PROGRAMMA SENZA
% MODIFICARE IL CODICE FORNITO E CERCARE DI RIPRODURRE
% FEDELMENTE L'ESEMPIO DI ESECUZIONE (a meno dei valori prodotti dalla funzione rand).

function traccia4()
clc;
A=fix(rand(6,6)*100);
disp ('La matrice A quadrata generata a caso è:');
disp(A);
[somma_d1, somma_d2]=somme_diagonali(A);
fprintf('Nella matrice A la somma degli elementi della diagonale principale vale %d\n',somma_d1);
fprintf('Nella matrice A la somma degli elementi della diagonale secondaria vale %d\n',somma_d2);
nome_f=input('Inserire il nome del file: ','s');
salva_dati(A, somma_d1, somma_d2, nome_f);
end

function [somma_d1, somma_d2]=somme_diagonali(m)

dim=6;
somma_d1=0;
for i=1:dim
somma_d1=somma_d1+m(i,i);
end
somma_d2=0;
for i=1:dim
somma_d2=somma_d2+m(i,dim+1-i);
end
end

function salva_dati(m, n1, n2, nome_file)
fid=fopen(nome_file,'wt');
if fid==-1
return;
end
for i=1:6
for j=1:6
fprintf(fid,'%d\t',m(i,j));
end
fprintf(fid,'\n');
end
fprintf(fid,'\nSomma diagonale principale=%d',n1);
fprintf(fid,'\nSomma diagonale secondaria=%d',n2);
fclose(fid);
end



poi ti faccio un'altra domanda sai se gli studenti degli anni precedenti possono sostenere l'esame con le nuove modalità(senza i file),o devono necessariamente fare la prova vecchia?

#7
peppepeppo

peppepeppo

    Moderatore di sezione

  • Moderatore
  • 2474 Messaggi:
dammi la data di questa traccia che ricordo di averla, così ti posto il file svolto.

poi ti faccio un'altra domanda sai se gli studenti degli anni precedenti possono sostenere l'esame con le nuove modalità(senza i file),o devono necessariamente fare la prova vecchia?

Non lo so, le tracce cambiano da prof a prof, tu con chi hai seguito?

#8
quasar

quasar

    Advanced Member

  • Utente
  • StellaStellaStella
  • 50 Messaggi:
non ce l'ho la data, con secondulfo

#9
peppepeppo

peppepeppo

    Moderatore di sezione

  • Moderatore
  • 2474 Messaggi:
Ti allego la traccia svolta.
Per la questione dell' esame contatta il prof, ti darà di sicuro maggiori chiarimenti!




Leggono questa discussione 0 utenti

0 utenti, 0 ospiti, 0 utenti anonimi