Open MarcoRianiUNIPR opened 3 hours ago
Ecco il codice di input:
B=zeros(7) n=1 for i=5:4:29 B(n,:)=(i11):(-2)i:-i n=n+1 end
Ho utilizzato un ciclo for: come prima cosa ho inizializzato la matrice "B" e la variabile "n", che ho poi usato per indicare le varie righe della matrice. Nel ciclo ho poi impostato "i" come una sequenza da 5 a 29, di 4 in 4 (numeri che si vedono nella penultima colonna, o nell'ultima con segno opposto). Ho poi trovato la formula che basandosi su questa variabile crea tutta la riga. Infine, per fare in modo che il ciclo proseguisse lungo tutte le righe della matrice, ho posto n=n+1.
Bravissima @emmaconta. Fatemi sapere se per il futuro volete avere altre competizioni di questo tipo. Commenti sono benvenuti
% La matrice viene inizializzata
A=zeros(7);
% incremento = differenza tra la riga i e la riga i-1
incremento=44:-8:-4;
A(1,:)=55:-10:-5;
for i=2:7
% La riga i di della matrice A è uguale alla riga
% i-1 della matrice A + incremento
% dove incremento è il vettore [44 36 ... -4]
A(i,:)=A(i-1,:)+incremento;
end
disp(A)
Questo input è simile alla sua soluzione, ma utilizzando le colonne al posto delle righe
Bchk=zeros(7); incrementochk=[-10:-8:-58]'; Bchk(:,1)=55:44:319; for i=2:7 Bchk(:,i)=Bchk(:,i-1)+incrementochk; end disp(Bchk)
Esattamente molto brava davvero!!!!!
%% Metodo alternativo basato sulle colonne
A=zeros(7);
% Definisco la prima colonna
A(:,1)=(55:44:319)';
% La colonna j è uguale alla colonna j-1 + incremento
incremento=(-10:-8:-58)';
for j=2:7
A(:,j)=A(:,j-1)+incremento;
end
%inizializzazione della matrice A=zeros(7); A(:,1)=(55:44:319) d=(-10:-8:-58)'; %incremento
for j=2:7
A(:,j)=A(:,j-1)+d;
end
disp(A)
Inizializzo una matrice 7*7 Inserisco i numeri della prima colonna con A(:,1) Inserisco l'incremento che varia colonna per colonna nella variabile d sotto forma di vettore colonna Nel ciclo for dalla seconda colonna fino alla settima aggiungerà l'incremento 'd' alla colonna precedente
Il processo generatore dei dati per creare la matrice A era
(5:4:31)'*(11:-2:-1)
@emmaconta prende 2 punti in più e @Vittoria378 1 punto in più
Il primo che riesce a creare la matrice di seguito prende un punto in più