Quero passar uma orientacao IMPORTANTISSIMA aos meus Irmaos...]
... Existe um problema SERISSIMO em Lacos Em Programacao...
... O pessoal acha que a EFICIENCIA ABSOLUTA em uma Laco consiste em usarmos de - 0 Ah Menor Que Uma Variavel Ou Uma Constante - porque ZERO é menor que UM e o SIMBOLO - < MENOR - vem antes do SIMBOLO - = IGUAL...
... Bem... Qual eh o problema?... Eh SIMPLES...
... O RACIOCINIO nao esta correto...
... Digamos que precisemos de um Laco com 10 Repeticoes... Se colocarmos de - 0 Ah Menor Que 10 - o programa fara as 10 Repeticoes de - 0 Ah Menor Que 10 - porque e voltara ao inicio do Laco para fazer mais uma VERIFICACAO para ver se a PROXIMA Repeticao é menor que o nunmero 10 ou menor que a VARIAVEL usada, portanto efetuara um Processamento INUTIL e INDESEJAVEL...
... Entao esse PROCEDIMENTO NAO EH A EFICIENCIA MAXIMA...
... O Pocedimento ser ABSOLUTAMENTE EFICIENTE, portanto PERFEITO, EH...
...
10 Ciclos
Repita de 0 ah 9
... Ou...
Rapita de 0 ah y - Crescente...
- Um exemplo em C...
for (i=0; i==9; i++)
for (i=0; i==y; i++)
for (i=x; i==y; i++)
Repita de y ah 0 - Decrescente...
for (i=9; i==0; i--)
for (i=y; i==0; i--)
for (i=y; i==x; i--)
- Exemplo em Pascal - Crescente...
for i:=0 to 9 do
for i:=0 to y do
for i:=x to y do
- Exemplo em Pascal - Decrescente...
for i:=9 to 0 do
for i:=9 to y do
for i:=y to x do
...
... Usando o SIMBOLO - = IGUAL - quando o Procedimento chegar ah ultima Repeticao ele sabera que chegou ao fim...
... Isso fica claro no exemplo que dei com a Linguagem C porque ao iniciar a ULTIMA Repeticao o Programa sabe que eh a ultima Repeticao, porque - i Ja Eh Igual Ah y
...
... Esse problema nao eh dejado quando usamos ele uma vez APENAS no Programa e VARIOS desse PROBLEMA NAO EH MAIS BONITO...
...
Texto De Zero Absoluto - Analista Analiticamente Analitico De Sistemas Sistematicamente Sistemicos Da Unifacs
domingo, 7 de novembro de 2010
terça-feira, 26 de outubro de 2010
Eu e a Engenharia De Software...
Eu nem vejo os Codigos...
... Eu vejo o programa FUNCIONADO...
... Voce nao assistiram The Matrix?...
... Voce nao receberam o Memo?...
... Quando eu estudo um CODIGO eu o vejo FUNCIONADO...
... Quando eu PROJETO um PROGRAMA eu o vejo FUNCIONANDO...
... Ao escrever um PROGRAMA eu o vejo FUNCIONANDO AO MESMO tempo que eu escrevo o CODIGO...
...
... Texto De Zero Absoluto - NEO - O Projetista
... Eu vejo o programa FUNCIONADO...
... Voce nao assistiram The Matrix?...
... Voce nao receberam o Memo?...
... Quando eu estudo um CODIGO eu o vejo FUNCIONADO...
... Quando eu PROJETO um PROGRAMA eu o vejo FUNCIONANDO...
... Ao escrever um PROGRAMA eu o vejo FUNCIONANDO AO MESMO tempo que eu escrevo o CODIGO...
...
... Texto De Zero Absoluto - NEO - O Projetista
quarta-feira, 9 de junho de 2010
Programinha Calculador...
Farei aqui um Programinha que efetua as Operacoes Matematicas basicas na Linguagem C usando apenas os Operadores basicos Adicao e Subtracao...
... Melhorarei o codigo se for possivel...
----------
- Variaveis
...Usaremos Variaveis do tipo Ponto Flutuante porque alem de a Divisao requerir esse tipo de Variavel o usuario pode precisar efetuar as outras operacoes com esse tipo de Variavel alem de termos maior precisao e usarmos menos variaveis no Programa...
... A operacao de Resto da Divisao requer que as Variaveis de sua operacao sejam do tipo Inteiro
a - Representa a Adicao
s - Representa a Subtracao
d - Representa a Divisao
m - Representa a Multiplicao
r - Representa o Resto da Divisao
x - E' um dos valores de entrada do usuario
y - E' um dos valores de entrada do usuario
----------
- Subtracao...
s - Recebe o valor da Subtracao
y - Recebe o primeiro numero da Subtracao
z - Recebe o segundo numero da Subtracao
Primeiro lemos os numeros do usuario...
scanf ("%f %f".&x, &y);
Calculemos...
s=x-y;
Por fim exibimos o resultado
printf ("O Resultado dessa Subtracao eh %f".s);
----------
- Adicao...
a - Recebe o valor da Adicao
y - Recebe o primeiro numero da Adicao
z - Recebe o segundo numero da Adicao
Primeiro lemos os numeros do usuario...
scanf ("%f %f".&x, &y);
Calculemos...
a=y+z;
Por fim exibimos o resultado
printf ("%f".a);
Foi quase a mesma coisa...
----------
- Divisao...
A Divisao possue seu Resultado e seu Resto por isso a coisa comeca a compicar aqui...
d - Recebe o valor do Calculo
r - Recebe o Resto da Divisao
y - Recebe o primeiro numero da Divisao
z - Recebe o segundo numero da Divisao
Primeiro lemos os numeros do usuario...
scanf ("%f %f".&x, &y);
Calculemos...
d=x/y;
r=x%y;
Por fim exibimos o resultado
printf ("O resultado dessa divisao eh %f e seu resto eh %f".d, r);
----------
- Multiplicacao
A Multiplicacao e' uma Adicao sucessiva por isso a coisa complica mais aqui por isso precisamos de um Laco...
Primeiro lemos os numeros do usuario...
scanf ("%f %f".&x, &y);
Usando o Simbolo "*" da Multiplicacao na Linguagem C temo...
m=x*y;
Usando apenas o Operador Adicao "+" temos...
... Precisei usar de "1" `a "Y" porque o Blogger nao aceitou de "0" `a "
for (i=1; i=y; i++)
m=m+x;
Por fim exibimos o resultado
printf ("%f",m);
... Melhorarei o codigo se for possivel...
----------
- Variaveis
...Usaremos Variaveis do tipo Ponto Flutuante porque alem de a Divisao requerir esse tipo de Variavel o usuario pode precisar efetuar as outras operacoes com esse tipo de Variavel alem de termos maior precisao e usarmos menos variaveis no Programa...
... A operacao de Resto da Divisao requer que as Variaveis de sua operacao sejam do tipo Inteiro
a - Representa a Adicao
s - Representa a Subtracao
d - Representa a Divisao
m - Representa a Multiplicao
r - Representa o Resto da Divisao
x - E' um dos valores de entrada do usuario
y - E' um dos valores de entrada do usuario
----------
- Subtracao...
s - Recebe o valor da Subtracao
y - Recebe o primeiro numero da Subtracao
z - Recebe o segundo numero da Subtracao
Primeiro lemos os numeros do usuario...
scanf ("%f %f".&x, &y);
Calculemos...
s=x-y;
Por fim exibimos o resultado
printf ("O Resultado dessa Subtracao eh %f".s);
----------
- Adicao...
a - Recebe o valor da Adicao
y - Recebe o primeiro numero da Adicao
z - Recebe o segundo numero da Adicao
Primeiro lemos os numeros do usuario...
scanf ("%f %f".&x, &y);
Calculemos...
a=y+z;
Por fim exibimos o resultado
printf ("%f".a);
Foi quase a mesma coisa...
----------
- Divisao...
A Divisao possue seu Resultado e seu Resto por isso a coisa comeca a compicar aqui...
d - Recebe o valor do Calculo
r - Recebe o Resto da Divisao
y - Recebe o primeiro numero da Divisao
z - Recebe o segundo numero da Divisao
Primeiro lemos os numeros do usuario...
scanf ("%f %f".&x, &y);
Calculemos...
d=x/y;
r=x%y;
Por fim exibimos o resultado
printf ("O resultado dessa divisao eh %f e seu resto eh %f".d, r);
----------
- Multiplicacao
A Multiplicacao e' uma Adicao sucessiva por isso a coisa complica mais aqui por isso precisamos de um Laco...
Primeiro lemos os numeros do usuario...
scanf ("%f %f".&x, &y);
Usando o Simbolo "*" da Multiplicacao na Linguagem C temo...
m=x*y;
Usando apenas o Operador Adicao "+" temos...
... Precisei usar de "1" `a "Y" porque o Blogger nao aceitou de "0" `a "
for (i=1; i=y; i++)
Por fim exibimos o resultado
printf ("%f",m);
terça-feira, 8 de junho de 2010
Aviso...
O Material que eu peguei para estudar a Linguagem C estava com erros por isso o Codigo que eu fiz ficou daquele geito...
quarta-feira, 2 de junho de 2010
Meu Trabalho...
Estou escrevendo um Programa em Pascal para gerir uma Locadora De Veiculos para apresentar como Trabalho na Universidade e estou colocando ele aqui para voces verem...
... Bem... Eu parei ai nesse Programa e acabei esquecendo de colocar o texto aqui antes de viajar...
... Basicamente se houver algum problema ele esta' na Sintax de Manipulacao de Arquivos e alguma coisa boa na qual eu me passei...
... Como nao domino Arquivos e preciso de discanso nao procurarei corrigir a parte de Arquivos agora...
... Talvez eu coloque a parte que ficou por ultimo...
... Tomara que gostem...
----------
program Locadora;
type registroclientes = record
codigo: string;
nome: string;
end;
registroveiculos = record
codigo: string;
nome: string;
tipo: string;
end;
registromovimentacoes = record
codigolocacao: string;
cofigocliente: string;
nomecliente: string;
codigoveiculo: string;
nomeveiculo: string:
tipoveiculo: string:
datasaida: string;
dataentrada: string:
end;
procedure cadastroclientes(var x: integer);
var c,i,p: integer;
begin
i:=1;
p:=x;
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°Cadastro De Clientes°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
writeln('Digite o numero da opcao da tarefa que voce deseja executar');
writeln('1 - Inclusao De Cliente');
writeln('2 - Alteracao De Dados');
writeln('3 - Consultar Dados');
writeln('4 - Excluir Cliente');
writeln('0 - Menu Principal');
writeln();
write('Sua opcao eh ');
readln(p);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
if p=1 then
begin
repeat
if (vetorclientes[i].codigo = '') then
begin
assign(vetorclientes[i],'CLIENTES.BIN');
writeln('Digite o codigo do cliente novo');
readln(vetorclientes[i].codigo);
writeln('Digite o nome do cliente novo');
readln(vetorclientes[i].nome);
write(vetorclientes[i]);
close(vetorclientes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorclientes[i].codigo = '') or (i=11);
if (i=11) then
begin
writeln('Nao existe vaga para adicionar cliente');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=2 then
begin
writeln('Digite o codigo do cliente que deseja efetuar a mudanca')
readln(c);
repeat
if (vetorclientes[i].codigo = c) then
begin
assign(vetorclientes[i],'CLIENTES.BIN');
rewrite(vetorclientes[i]);
writeln('Digite o codigo do cliente');
readln(vetorclientes[i].codigo);
writeln('Digite o nome do cliente');
readln(vetorcliente[i].nome);
write(vetorclientes[i]);
close(vetorclientes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorclientes[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe cliente com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=3 then
begin
writeln('Digite o codigo dos dados que voce deseja consultat');
readln(c);
repeat
if (vetorclientes[i].codigo = c) then
begin
assign(vetorclientess[i],'CLIENTES.BIN');
write('Codigo do cliente - ');
writeln(vetorclientes[i].codigo);
write('Nome do veiculo - ');
writeln(vetorclientes[i].nome);
close(vetorclientes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorclientes[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe cliente com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=4 then
begin
writeln('Digite o codigo dos dados que voce deseja excluir');
readln(c);
repeat
if (vetorclientes[i].codigo = c) then
begin
assign(vetorclientes[i],'CLIENTES.BIN');
writeln('Tecle ENTER para apagar o codigo');
rewriteln(vetorclientes[i].codigo);
writeln('Tecle ENTER para apagar o nome');
rewriteln(vetorclientes[i].nome);
close(vetorclientes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorclientes[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe cliente com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
end;
procedure cadastroveiculos(var x: integer);
var c,i,p: integer;
begin
i:=1;
p:=x;
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°Cadastro De Veiculos°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
writeln('Digite o numero da opcao da tarefa que voce deseja executar');
writeln('1 - Inclusao De Veiculo');
writeln('2 - Alteracao De Dados');
writeln('3 - Consultar Dados');
writeln('4 - Excluir Veiculo');
writeln('0 - Menu Principal');
writeln();
write('Sua opcao eh ');
readln(p);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
if p=1 then
begin
repeat
if (vetorveiculos[i].codigo = '') then
begin
assign(vetorveiculos[i],'VEICULOS.BIN');
writeln('Digite o codigo do veiculo novo');
readln(vetorveiculos[i].codigo);
writeln('Digite o nome do veiculo novo');
readln(vetorveiculos[i].nome);
writeln('Digite o tipo do veiculo novo');
readln(vetorveiculos[i].tipo);
write(vetorveiculos[i]);
close(vetorveiculos[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorveiculos[i].codigo = '') or (i=11);
if (i=11) then
begin
writeln('Nao existe vaga para adicionar veiculo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=2 then
begin
writeln('Digite o codigo do veiculo que deseja efetuar a mudanca')
readln(c);
repeat
if (vetorclientes[i].codigo = c) then
begin
assign(vetorveiculos[i],'VEICULOS.BIN');
rewrite(vetorveiculos[i]);
writeln('Digite o codigo do veiculo');
readln(vetorveiculos[i].codigo);
writeln('Digite o nome do veiculo');
readln(vetorveiculos[i].nome);
writeln('Digite o tipo do veiculo novo');
readln(vetorveiculos[i].tipo);
write(vetorveiculos[i]);
close(vetorveiculos[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorveiculos[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe veiculo com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=3 then
begin
writeln('Digite o codigo dos dados que voce deseja consultat');
readln(c);
repeat
if (vetorveiculos[i].codigo = c) then
begin
assign(vetorveiculos[i],'VEICULOS.BIN');
write('Codigo do veiculo - ');
writeln(vetorveiculos[i].codigo);
write('Nome do veiculo - ');
writeln(vetorveiculos[i].nome);
write('Tipo do veiculo - ');
writeln(vetorveiculos[i].tipo);
close(vetorveiculos[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorveiculos[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe veiculo com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=3 then
begin
writeln('Digite o codigo dos dados que voce deseja excluir');
readln(c);
repeat
if (vetorveiculos[i].codigo = c) then
begin
assign(vetorveiculos[i],'VEICULOS.BIN');
writeln('Tecle ENTER para apagar o codigo');
rewriteln(vetorveiculos[i].codigo);
writeln('Tecle ENTER para apagar o nome');
rewriteln(vetorveiculos[i].nome);
writeln('Tecle ENTER para apagar o tipo');
rewriteln(vetorveiculos[i].tipo);
close(vetorveiculos[i])
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');;
end;;
i:=i+1;
until (vetorveiculos[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe veiculo com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
end;
procedure movimentacao(var x: integer);
var c,i,p: integer;
begin
p:=x;
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°Movimentacao°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
writeln('Digite o numero da opcao da tarefa que voce deseja executar');
writeln('1 - Locar');
writeln('2 - Data de devolucao');
writeln('0 - Menu Principal');
writeln();
write('Sua opcao eh ');
readln(p);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
if p=1 then
begin
repeat
if (vetormovimentacoes[i].codigolocacao = '') then
begin
assign(vetormovimentacoes[i],'LOCACOES.BIN');
write('Codigo da locacao - ');
writeln(vetorveiculos[i].codigolocacao);
write('Codigo do cliente - ');
writeln(vetorveiculos[i].cofigocliente);
write('Nome do cliente - ');
writeln(vetorveiculos[i].nomecliente);
write('Codigo do veiculo - ');
writeln(vetorveiculos[i].codigoveiculo);
write('Nome do veiculo - ');
writeln(vetorveiculos[i].nomeveiculo);
write('Tipo do veiculo - ');
writeln(vetorveiculos[i].tipoveiculo);
write('Data de saida - ');
writeln(vetorveiculos[i].datasaida);
write('Data de entrada - ');
writeln(vetorveiculos[i].dataentrada);
write(vetormovimentacoes[i]);
close(vetormovimentacoes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetormovimentacoes[i].codigolocacao = '') or (i=11);
if (i=11) then
begin
writeln('Nao existe veiculo disponivel');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=2 then
begin
repeat
if (vetormovimentacoes[i].codigolocacao = c) then
begin
assign(vetormovimentacoes[i],'LOCACOES.BIN');
writeln('Digite o codigo da locacao');
readln(vetorveiculos[i].codigolocacao);
writeln('Digite o codigo do cliente');
readln(vetorveiculos[i].cofigocliente);
writeln('Digite o nome do cliente');
readln(vetorveiculos[i].nomecliente);
writeln('Digite o codigo do veiculo');
readln(vetorveiculos[i].codigoveiculo);
writeln('Digite o nome do veiculo');
readln(vetorveiculos[i].nomeveiculo);
writeln('Digite o tipo do veiculo');
readln(vetorveiculos[i].tipoveiculo);
writeln('Digite a data de saida');
readln(vetorveiculos[i].datasaida);
writeln('Digite a data de entrada');
readln(vetorveiculos[i].dataentrada);
write(vetormovimentacoes[i]);
close(vetormovimentacoes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetormovimentacoes[i].codigolocacao = '') or (i=11);
if (i=11) then
begin
writeln('Nao existe vaga para locacao');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
end;
var a: integer;
vetorclientes: array [1..10] of file of registroclientes;
vetorveiculos: array [1..10] of file of registroveiculos;
vetormovimentacoes: array [1..10] of file of registromovimentacoes;
begin
a:=1;
while (a=1) or (a=2) or (a=3) do
begin
write('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
write('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°Locadora De Veiculos°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
writeln('Digite o numero da opcao da tarefa que voce deseja executar');
writeln();
writeln('1 - Cadastro De Clientes');
writeln('2 - Cadastro De Veiculos');
writeln('3 - Movimentacoes');
writeln('Ou tecle qualquer outro digito para sair desse programa');
writeln();
write('Sua opcao eh ');
readln(a);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
case a of
1: cadastroclientes(a);
2: cadastroveiculos(a);
3: movimentacao(a);
end;
end;
end.
... Bem... Eu parei ai nesse Programa e acabei esquecendo de colocar o texto aqui antes de viajar...
... Basicamente se houver algum problema ele esta' na Sintax de Manipulacao de Arquivos e alguma coisa boa na qual eu me passei...
... Como nao domino Arquivos e preciso de discanso nao procurarei corrigir a parte de Arquivos agora...
... Talvez eu coloque a parte que ficou por ultimo...
... Tomara que gostem...
----------
program Locadora;
type registroclientes = record
codigo: string;
nome: string;
end;
registroveiculos = record
codigo: string;
nome: string;
tipo: string;
end;
registromovimentacoes = record
codigolocacao: string;
cofigocliente: string;
nomecliente: string;
codigoveiculo: string;
nomeveiculo: string:
tipoveiculo: string:
datasaida: string;
dataentrada: string:
end;
procedure cadastroclientes(var x: integer);
var c,i,p: integer;
begin
i:=1;
p:=x;
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°Cadastro De Clientes°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
writeln('Digite o numero da opcao da tarefa que voce deseja executar');
writeln('1 - Inclusao De Cliente');
writeln('2 - Alteracao De Dados');
writeln('3 - Consultar Dados');
writeln('4 - Excluir Cliente');
writeln('0 - Menu Principal');
writeln();
write('Sua opcao eh ');
readln(p);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
if p=1 then
begin
repeat
if (vetorclientes[i].codigo = '') then
begin
assign(vetorclientes[i],'CLIENTES.BIN');
writeln('Digite o codigo do cliente novo');
readln(vetorclientes[i].codigo);
writeln('Digite o nome do cliente novo');
readln(vetorclientes[i].nome);
write(vetorclientes[i]);
close(vetorclientes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorclientes[i].codigo = '') or (i=11);
if (i=11) then
begin
writeln('Nao existe vaga para adicionar cliente');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=2 then
begin
writeln('Digite o codigo do cliente que deseja efetuar a mudanca')
readln(c);
repeat
if (vetorclientes[i].codigo = c) then
begin
assign(vetorclientes[i],'CLIENTES.BIN');
rewrite(vetorclientes[i]);
writeln('Digite o codigo do cliente');
readln(vetorclientes[i].codigo);
writeln('Digite o nome do cliente');
readln(vetorcliente[i].nome);
write(vetorclientes[i]);
close(vetorclientes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorclientes[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe cliente com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=3 then
begin
writeln('Digite o codigo dos dados que voce deseja consultat');
readln(c);
repeat
if (vetorclientes[i].codigo = c) then
begin
assign(vetorclientess[i],'CLIENTES.BIN');
write('Codigo do cliente - ');
writeln(vetorclientes[i].codigo);
write('Nome do veiculo - ');
writeln(vetorclientes[i].nome);
close(vetorclientes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorclientes[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe cliente com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=4 then
begin
writeln('Digite o codigo dos dados que voce deseja excluir');
readln(c);
repeat
if (vetorclientes[i].codigo = c) then
begin
assign(vetorclientes[i],'CLIENTES.BIN');
writeln('Tecle ENTER para apagar o codigo');
rewriteln(vetorclientes[i].codigo);
writeln('Tecle ENTER para apagar o nome');
rewriteln(vetorclientes[i].nome);
close(vetorclientes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorclientes[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe cliente com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
end;
procedure cadastroveiculos(var x: integer);
var c,i,p: integer;
begin
i:=1;
p:=x;
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°Cadastro De Veiculos°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
writeln('Digite o numero da opcao da tarefa que voce deseja executar');
writeln('1 - Inclusao De Veiculo');
writeln('2 - Alteracao De Dados');
writeln('3 - Consultar Dados');
writeln('4 - Excluir Veiculo');
writeln('0 - Menu Principal');
writeln();
write('Sua opcao eh ');
readln(p);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
if p=1 then
begin
repeat
if (vetorveiculos[i].codigo = '') then
begin
assign(vetorveiculos[i],'VEICULOS.BIN');
writeln('Digite o codigo do veiculo novo');
readln(vetorveiculos[i].codigo);
writeln('Digite o nome do veiculo novo');
readln(vetorveiculos[i].nome);
writeln('Digite o tipo do veiculo novo');
readln(vetorveiculos[i].tipo);
write(vetorveiculos[i]);
close(vetorveiculos[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorveiculos[i].codigo = '') or (i=11);
if (i=11) then
begin
writeln('Nao existe vaga para adicionar veiculo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=2 then
begin
writeln('Digite o codigo do veiculo que deseja efetuar a mudanca')
readln(c);
repeat
if (vetorclientes[i].codigo = c) then
begin
assign(vetorveiculos[i],'VEICULOS.BIN');
rewrite(vetorveiculos[i]);
writeln('Digite o codigo do veiculo');
readln(vetorveiculos[i].codigo);
writeln('Digite o nome do veiculo');
readln(vetorveiculos[i].nome);
writeln('Digite o tipo do veiculo novo');
readln(vetorveiculos[i].tipo);
write(vetorveiculos[i]);
close(vetorveiculos[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorveiculos[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe veiculo com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=3 then
begin
writeln('Digite o codigo dos dados que voce deseja consultat');
readln(c);
repeat
if (vetorveiculos[i].codigo = c) then
begin
assign(vetorveiculos[i],'VEICULOS.BIN');
write('Codigo do veiculo - ');
writeln(vetorveiculos[i].codigo);
write('Nome do veiculo - ');
writeln(vetorveiculos[i].nome);
write('Tipo do veiculo - ');
writeln(vetorveiculos[i].tipo);
close(vetorveiculos[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetorveiculos[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe veiculo com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=3 then
begin
writeln('Digite o codigo dos dados que voce deseja excluir');
readln(c);
repeat
if (vetorveiculos[i].codigo = c) then
begin
assign(vetorveiculos[i],'VEICULOS.BIN');
writeln('Tecle ENTER para apagar o codigo');
rewriteln(vetorveiculos[i].codigo);
writeln('Tecle ENTER para apagar o nome');
rewriteln(vetorveiculos[i].nome);
writeln('Tecle ENTER para apagar o tipo');
rewriteln(vetorveiculos[i].tipo);
close(vetorveiculos[i])
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');;
end;;
i:=i+1;
until (vetorveiculos[i].codigo = c);
if (i=11) then
begin
writeln('Nao existe veiculo com esse codigo');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
end;
procedure movimentacao(var x: integer);
var c,i,p: integer;
begin
p:=x;
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°Movimentacao°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
writeln('Digite o numero da opcao da tarefa que voce deseja executar');
writeln('1 - Locar');
writeln('2 - Data de devolucao');
writeln('0 - Menu Principal');
writeln();
write('Sua opcao eh ');
readln(p);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
if p=1 then
begin
repeat
if (vetormovimentacoes[i].codigolocacao = '') then
begin
assign(vetormovimentacoes[i],'LOCACOES.BIN');
write('Codigo da locacao - ');
writeln(vetorveiculos[i].codigolocacao);
write('Codigo do cliente - ');
writeln(vetorveiculos[i].cofigocliente);
write('Nome do cliente - ');
writeln(vetorveiculos[i].nomecliente);
write('Codigo do veiculo - ');
writeln(vetorveiculos[i].codigoveiculo);
write('Nome do veiculo - ');
writeln(vetorveiculos[i].nomeveiculo);
write('Tipo do veiculo - ');
writeln(vetorveiculos[i].tipoveiculo);
write('Data de saida - ');
writeln(vetorveiculos[i].datasaida);
write('Data de entrada - ');
writeln(vetorveiculos[i].dataentrada);
write(vetormovimentacoes[i]);
close(vetormovimentacoes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetormovimentacoes[i].codigolocacao = '') or (i=11);
if (i=11) then
begin
writeln('Nao existe veiculo disponivel');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
if p=2 then
begin
repeat
if (vetormovimentacoes[i].codigolocacao = c) then
begin
assign(vetormovimentacoes[i],'LOCACOES.BIN');
writeln('Digite o codigo da locacao');
readln(vetorveiculos[i].codigolocacao);
writeln('Digite o codigo do cliente');
readln(vetorveiculos[i].cofigocliente);
writeln('Digite o nome do cliente');
readln(vetorveiculos[i].nomecliente);
writeln('Digite o codigo do veiculo');
readln(vetorveiculos[i].codigoveiculo);
writeln('Digite o nome do veiculo');
readln(vetorveiculos[i].nomeveiculo);
writeln('Digite o tipo do veiculo');
readln(vetorveiculos[i].tipoveiculo);
writeln('Digite a data de saida');
readln(vetorveiculos[i].datasaida);
writeln('Digite a data de entrada');
readln(vetorveiculos[i].dataentrada);
write(vetormovimentacoes[i]);
close(vetormovimentacoes[i]);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
i:=i+1;
until (vetormovimentacoes[i].codigolocacao = '') or (i=11);
if (i=11) then
begin
writeln('Nao existe vaga para locacao');
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
end;
end;
end;
var a: integer;
vetorclientes: array [1..10] of file of registroclientes;
vetorveiculos: array [1..10] of file of registroveiculos;
vetormovimentacoes: array [1..10] of file of registromovimentacoes;
begin
a:=1;
while (a=1) or (a=2) or (a=3) do
begin
write('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
write('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°Locadora De Veiculos°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
writeln('Digite o numero da opcao da tarefa que voce deseja executar');
writeln();
writeln('1 - Cadastro De Clientes');
writeln('2 - Cadastro De Veiculos');
writeln('3 - Movimentacoes');
writeln('Ou tecle qualquer outro digito para sair desse programa');
writeln();
write('Sua opcao eh ');
readln(a);
writeln();
writeln('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°');
case a of
1: cadastroclientes(a);
2: cadastroveiculos(a);
3: movimentacao(a);
end;
end;
end.
segunda-feira, 4 de janeiro de 2010
Engenharia De Software - Objetivos
O objetivo em uma Engenharia De Software eh a Eficiencia Absoluta do Software
O objetivo eh deixar o Programa na jante... Na chapa...
Consequancias
- Faz com que o seja exigido o minimo possivel do Computador na execucao de tarefas efetuando as tarefas em MUITO menos tempo
- Exige menos consumo de energia para execucao de tarefas
- Diminue o aquecimento dos Micro Chips
- Torna possivel o uso absoluto da Maquina
O objetivo eh deixar o Programa na jante... Na chapa...
Consequancias
- Faz com que o seja exigido o minimo possivel do Computador na execucao de tarefas efetuando as tarefas em MUITO menos tempo
- Exige menos consumo de energia para execucao de tarefas
- Diminue o aquecimento dos Micro Chips
- Torna possivel o uso absoluto da Maquina
Assinar:
Postagens (Atom)