quinta-feira, 9 de outubro de 2014

Algoritmo Formar Triangulo com "*" Nava





program triangulos;
uses crt;
var opcao : integer;
    linhas : integer;
    i : integer;
    j : integer;
    c : integer;
begin
    repeat
        // menu de opções
        writeln('Menu:');
        writeln('1 - Esquerda');
        writeln('2 - Direita');
        writeln('3 - Centralizado');
        writeln('0 - Sair');
        readln(opcao);

        case opcao of
             1 : // processa Esquerda
               begin
                    writeln('Opcao Esquerda');
                    write('Digite o numero de linhas: ');
                    readln(linhas);
                    for i := 1 to linhas do
                    begin
                         for j := 1 to i do
                         begin
                             write('*');
                         end;
                         writeln();
                    end;
               end;
             2 : // processa direita
               begin
                    writeln('Opcao Direita');
                    write('Digite o numero de linhas: ');
                    readln(linhas);
                    for i := 1 to linhas do
                    begin
                         for j := i to (linhas - 1) do
                         begin
                             write(' ');
                         end;
                         for j := 1 to i do
                         begin
                             write('*');
                         end;
                         writeln();
                    end;
               end;
             3: // processa centralizado
               begin
                    writeln('Opcao Centralizado');
                    write('Digite o numero de linhas: ');
                    readln(linhas);
                    for i := 1 to linhas do
                    begin
                         for j := i to (linhas - 1) do
                         begin
                             write(' ');
                         end;
                         for j := 1 to (i * 2) - 1 do
                         begin
                             write('*');
                         end;
                         writeln();
                    end;
                    writeln('Asafe way');
                    c := 1;
                    // for das linhas
                    for i := 1 to linhas do
                    begin
                         // for de espacos
                         for j := i to (linhas - 1) do
                         begin
                             write(' ');
                         end;

                         // for de asteriscos
                         for j := 1 to c do
                         begin
                             write('*');
                         end;
                         c := c + 2;
                         writeln();
                    end;
               end;
             0: // sai do programa
               writeln('Tchau!');
             else
               writeln('Opcao invalida!');
        end;
    until opcao = 0 ;
    readkey;
end.
                                                   

Nenhum comentário:

Postar um comentário

Pascal - Lazarus