Este guia foi o mais complexo de todos. Tive muita dificuldade para resolvê-lo, já que envolvia uma linguagem de altíssi,o mível. O objetivo era criar desenhar duas bandeiras do Brasil, uma com as cores originais e outra com cores aleatóreas.
Programa Fonte:
program bandeirasilas;
var opcaomenu:integer; {para armazenar a opcao de bandeira escolhida}
vermelho:integer; {para armazenar um valor aleatório da cor vermelho}
verde:integer; {pra armazenar o valor aleatorio da cor verde}
azul:integer; {para armazenar o valor aleatorio da cor azul}
procedure retangulo(lado1 : real; lado2 : real);
{procedimento para desenhar um retangulo}
var i:integer;
begin
for i:=1 to 2 do
begin
pfrente(lado1);
pdireita(90);
pfrente(lado2);
pdireita(90);
end;
end;
procedure angulolosango(dmaior : real;dmenor : real);
{procedimento para calcular o valor dos angulos do losango}
var h : real; {hipotenusa(h) do triangulo retangulo (entre as diagonais do losango)}
x : real; {variável par o seno do angulo}
angulo : real; {angulo de abertura do losango}
begin
h:=sqrt(sqr(dmaior) + sqr(dmenor));
x:=(dmenor/h);
Angulo:=arcsin(x);
end;
procedure losango; {desenha um losango}
var i:integer;
begin
angulolosango(173.20,100);
pesquerda(30);
pfrente(200);
pdireita(60);
pfrente(200);
pdireita(120);
pfrente(200);
pdireita(60);
pfrente(200);
pdireita(150);
end;{losango}
procedure circunferencia(raio:real); {procedimento para desenhar uma circunferencia}
var i:integer;
begin
for i:= 1 to 360 do
begin
pfrente(0.017453277*raio);
pdireita(1);
end;
end;{Circunferencia}
procedure Estrelas; {procedimento para desenhar uma estrela}
var i:integer;
begin
for i:=1 to 5 do
begin
pesquerda(360/5);
pfrente(8);
pdireita(720/5);
pfrente(8);
end;
end;
{****PROGRAMA PRINCIPAL****}
begin
repeat {Usado para definir qual bandeira o programa ira desenhar}
write('Digite 1 para desenhar a bandeira aleatória ou 2 para a bandeira original');
readln(opcaomenu);{opcao que sera escolhida(1 ou 2)}
until(opcaomenu=1) or (opcaomenu=2);{so poderao ser escolhidas as opcoes 1 e 2}
clrscr;
ul;
retangulo(300,446);{retangulo}
un;
if opcaomenu=1
then begin
vermelho:=random(255);
verde:=random(255);
azul:=random(255);
mudecorpreenche(vermelho,verde,azul);
end
else begin
mudecorpreenche(0,158,0);
end;
pdireita(45);
pfrente(10);
pinte;
pesquerda(45);
ptras(10);
pfrente(150);
pdireita(90);
pfrente(50);
ul;
losango; {losango}
un;
if opcaomenu=1
then begin
vermelho:=random(255);
verde:=random(255);
azul:=random(255);
mudecorpreenche(vermelho,verde,azul);
end
else begin
mudecorpreenche(255,255,0);
end;
pfrente(30);
pinte;
ptras(30);
pfrente(112);
pesquerda(90);
ul;
circunferencia(65); {Circunferencia}
un;
if opcaomenu=1
then begin
vermelho:=random(255);
verde:=random(255);
azul:=random(255);
mudecorpreenche(vermelho,verde,azul);
end
else begin
mudecorpreenche(0,0,255);
end;
pdireita(90);
pfrente(5);
pinte;
pesquerda(90);
ptras(5);
pdireita(90);
pfrente(35);
ul;
if opcaomenu=1
then begin
vermelho:=random(255);
verde:=random(255);
azul:=random(255);
mudecorlapis(vermelho,verde,azul);
end
else begin
mudecorlapis(255,255,255);
end;
estrelas; {Estrelas}
un;
if opcaomenu=1
then begin
vermelho:=random(255);
verde:=random(255);
azul:=random(255);
mudecorpreenche(vermelho,verde,azul);
end
else begin
mudecorpreenche(255,255,255);
end;
pdireita(90);
pfrente(3);
pinte;
ptras(3);
pfrente(25);
pesquerda(90);
pfrente(25);
pesquerda(90);
pfrente(30);
ul;
estrelas; {Estrelas}
un;
pdireita(90);
pfrente(3);
pinte;
pesquerda(90);
ptras(3);
dr;
end.
Meu nome (como já deu para perceber) é Silas, tenho 20 anos (e mais 8 meses até agora) e criei este blog porque minha professora de programação de computadores na UFMG passou como trabalho. Iniciei meu estudo em Engenharia de Minas no 2º semestre de 2010 (calouro!) e pretendo formar em 2015. Nasci em Pedro Leopoldo-MG, mas cresci em uma pequena grande cidade chamada Barão de Cocais (MG também)... Não sei o que postar neste blog (na verdade nem sei se vou mante-lo), mas quando souber eu posto!
Nenhum comentário:
Postar um comentário
Obrigado por comentar!!