Untitled

 avatar
unknown
matlab
14 days ago
881 B
2
Indexable
function n = puoSpostarsiOriz(m, pos)

    if length(pos) ~= 2 || pos(1) < 1 || pos(2)<1 ...
        pos(1) > size(m,1) || pos(2) > size(m,2)

        n = -1;
        return;
    end

    riga = pos(1);
    col = pos(2);

    if m(riga, col) == 0
        n = 0;
        return;
    end

    n=0;
    for j = col+1:size(m,2)
        if m(riga,j) == 1
            n = n + 1
        else
            break;
        end
end


M = randi(2, 10, 10) -1;
disp('Matrice generata: ');
disp(M);

while true
    riga = input('Inserisci il numero della riga: ');
    colonna = input('Inserisci il numero della colonna: ');

    if riga >= 1 && riga <= 10 && colonna >= 1 && colonna <= 10
        break;
    else
        disp('Valori non validi. Riprova');
    end
end


risultato = puoSpostarsiOriz(M, [riga, colonna]);
fprintf('Il robot può spostarsi di %d celle verso destra\n', risultato);
Leave a Comment