Você está na página 1de 6

Atividade Prática 2

Programação Desktop

Valor: 1,5 pontos

1
program BoasVindas;

{$mode objfpc}{$H+}

uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes, SysUtils, Forms, Dialogs;

var
Nome: string;

begin
Application.Initialize;
Application.CreateForm(TForm, Form1);

// Solicita ao usuário que insira um nome


if InputQuery('Digite seu nome', 'Nome:', Nome) then
begin
// Exibe uma mensagem de boas-vindas com o nome digitado
ShowMessage('Bem-vindo, ' + Nome + '!');
end;

Application.Run;
end.

2
program BoasVindas;

{$mode objfpc}{$H+}

uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes, SysUtils, Forms, Dialogs;

var
Nome: string;

begin
Application.Initialize;
Application.CreateForm(TForm, Form1);

// Solicita ao usuário que insira um nome


if InputQuery('Digite seu nome', 'Nome:', Nome) then
begin
// Verifica se o nome está vazio
if Nome <> '' then
begin
// Exibe uma mensagem de boas-vindas com o nome digitado
ShowMessage('Bem-vindo, ' + Nome + '!');
end
else
begin
// Exibe uma mensagem se o nome estiver vazio
ShowMessage('Nome não identificado!');
end;
end;

Application.Run;
end.

3
program BoasVindas;

{$mode objfpc}{$H+}

uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes, SysUtils, Forms, Dialogs;

var
Nome, IdadeStr: string;
Idade: Integer;

begin
Application.Initialize;
Application.CreateForm(TForm, Form1);

// Solicita ao usuário que insira o nome e a idade


if InputQuery('Digite seu nome', 'Nome:', Nome) then
begin
if InputQuery('Digite sua idade', 'Idade:', IdadeStr) then
begin
// Verifica se o campo de idade é um número válido
if TryStrToInt(IdadeStr, Idade) then
begin
// Exibe uma mensagem de boas-vindas com o nome e a idade
ShowMessage('Bem-vindo, ' + Nome + '! Sua idade é: ' + IntToStr(Idade));
end
else
begin
// Exibe uma mensagem se a idade não for um número válido
ShowMessage('Idade inválida!');
end;
end;
end;

Application.Run;
end.

4
program CalculoSalarioSemanal;

{$mode objfpc}{$H+}

uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes, SysUtils, Forms, EditBtn, Dialogs;

var
ValorHora: Double;
SalarioSemanal: Double;
InputStr: string;
EditSalario: TEdit;

begin
Application.Initialize;
Application.CreateForm(TForm, Form1);

// Solicita ao usuário que insira o valor da hora


if InputQuery('Informe o valor da hora de trabalho', 'Valor:', InputStr) then
begin
if TryStrToFloat(InputStr, ValorHora) then
begin
// Calcula o salário semanal
SalarioSemanal := 5 * 8 * ValorHora;

// Cria um componente Edit (caixa de texto) para mostrar o resultado


EditSalario := TEdit.Create(Form1);
EditSalario.Parent := Form1;
EditSalario.Top := 10;
EditSalario.Left := 10;
EditSalario.Text := 'Salário Semanal: ' + FloatToStr(SalarioSemanal);
EditSalario.Width := 200;
EditSalario.Height := 20;
EditSalario.ReadOnly := True;

Form1.ShowModal;
end
else
begin
ShowMessage('O valor da hora de trabalho deve ser um número válido.');
end;
end;

Application.Run;
end.

5.1
program CalculadoraSimples;

{$mode objfpc}{$H+}

uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes, SysUtils, Dialogs;

var
Numero1, Numero2: Double;
Soma, Produto, Subtracao, Divisao: Double;
InputStr: string;

begin
Application.Initialize;
Application.CreateForm(TForm, Form1);

// Solicita ao usuário que insira o primeiro número


if InputQuery('Informe o primeiro número', 'Número:', InputStr) then
begin
if TryStrToFloat(InputStr, Numero1) then
begin
// Solicita ao usuário que insira o segundo número (diferente de zero)
if InputQuery('Informe o segundo número (diferente de zero)', 'Número:',
InputStr) then
begin
if TryStrToFloat(InputStr, Numero2) and (Numero2 <> 0) then
begin
// Realiza os cálculos
Soma := Numero1 + Numero2;
Produto := Numero1 * Numero2;
Subtracao := Numero1 - Numero2;
Divisao := Numero1 / Numero2;

// Exibe os resultados na tela


ShowMessage('Soma: ' + FloatToStr(Soma) +
#13#10 +
'Produto: ' + FloatToStr(Produto) +
#13#10 +
'Subtração: ' + FloatToStr(Subtracao) +
#13#10 +
'Divisão: ' + FloatToStr(Divisao));
end
else
begin
ShowMessage('O segundo número deve ser diferente de zero e ser um número
válido.');
end;
end;
end
else
begin
ShowMessage('O primeiro número deve ser um número válido.');
end;
end;

Application.Run;
end.

5.2
program MediaAritmetica;

{$mode objfpc}{$H+}

uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes, SysUtils, Dialogs;

var
Numero1, Numero2, Media: Double;
InputStr: string;

begin
Application.Initialize;
Application.CreateForm(TForm, Form1);

// Solicita ao usuário que insira o primeiro número


if InputQuery('Informe o primeiro número', 'Número:', InputStr) then
begin
if TryStrToFloat(InputStr, Numero1) then
begin
// Solicita ao usuário que insira o segundo número
if InputQuery('Informe o segundo número', 'Número:', InputStr) then
begin
if TryStrToFloat(InputStr, Numero2) then
begin
// Calcula a média aritmética
Media := (Numero1 + Numero2) / 2;

// Exibe a média na tela


ShowMessage('A média aritmética dos números é: ' + FloatToStr(Media));
end
else
begin
ShowMessage('O segundo número deve ser um número válido.');
end;
end;
end
else
begin
ShowMessage('O primeiro número deve ser um número válido.');
end;
end;

Application.Run;
end.

Você também pode gostar