semi linguagem de programacao comercial 01

21
/LQJXDJHPGH3URJUDPDomR&RPHUFLDO Autoria: Douglas Fugita de Oliveira Cezar Tema 01 Recursos do Ambiente de Desenvolvimento. Inovações na Linguagem e Sintaxe. Utilizando Windows Forms e Respectivos Controles 7HPD Recursos do Ambiente de Desenvolvimento. Inovações na Linguagem e Sintaxe. Utilizando Windows Forms e Respectivos Controles Autoria: Douglas Fugita de Oliveira Cezar Como citar esse documento: CEZAR, Douglas Fugita de Oliveira. Linguagem de Programação Comercial: Recursos do Ambiente de Desenvolvimento. Inovações na Linguagem e Sintaxe. Utilizando Windows Forms e Respectivos Controles. Valinhos: Anhanguera Educacional, 2014. Índice $QKDQJXHUD (GXFDFLRQDO 3URLELGD D UHSURGXomR ¿QDO RX SDUFLDO SRU TXDOTXHU PHLR GH LPSUHVVmR HP IRUPD LGrQWLFD UHVXPLGD RX PRGL¿FDGD HP OtQJXD SRUWXJXHVDRXTXDOTXHURXWURLGLRPD Pág. 32 Pág. 33 Pág. 33 Pág. 32 Pág. 29 Pág. 28 ACOMPANHENAWEB Pág. 3 CONVITEÀLEITURA Pág. 3 PORDENTRODOTEMA

Upload: samuel-fernandes-silva

Post on 03-Dec-2015

26 views

Category:

Documents


7 download

DESCRIPTION

Programação comercial

TRANSCRIPT

Page 1: SEMI Linguagem de Programacao Comercial 01

Autoria: Douglas Fugita de Oliveira Cezar

Tema 01Recursos do Ambiente de Desenvolvimento. Inovações na Linguagem e Sintaxe. Utilizando Windows Forms e Respectivos Controles

Recursos do Ambiente de Desenvolvimento. Inovações na Linguagem e Sintaxe. Utilizando Windows Forms e Respectivos ControlesAutoria: Douglas Fugita de Oliveira Cezar

Como citar esse documento:CEZAR, Douglas Fugita de Oliveira. Linguagem de Programação Comercial: Recursos do Ambiente de Desenvolvimento. Inovações na Linguagem e Sintaxe. Utilizando Windows Forms e Respectivos Controles. Valinhos: Anhanguera Educacional, 2014.

Índice

Pág. 32

Pág. 33 Pág. 33

Pág. 32

Pág. 29Pág. 28ACOMPANHENAWEB

Pág. 3CONVITEÀLEITURA

Pág. 3PORDENTRODOTEMA

Page 2: SEMI Linguagem de Programacao Comercial 01

Neste caderno você encontrará o conceito de .NET Framework, também conhecido como “.NET” (de pronúncia “dot net”), que corresponde à estrutura em que se baseiam todas as linguagens suportadas pelo CLR (Common Language Runtime). O CLR é o ambiente de compilação dos códigos-fonte que serão gerados no .NET Framework, sendo ainda o responsável por executar o código e também por fornecer serviços que visam facilitar o desenvolvimento de software. Dentre as linguagens de programação que o compilador executa está o C#, que é a linguagem de programação que servirá de base para este estudo. No entanto, os recursos que serão vistos neste caderno podem ser aplicados a qualquer outra linguagem utilizada na mesma ferramenta – o Visual Studio –, como por exemplo, “ASP.NET”, “Visual Basic”, que fazem parte do pacote de execução do .NET Framework, além dos recursos para integração e desenvolvimento de banco de dados.

Neste material, você encontrará também noções sobre os principais recursos do ambiente de desenvolvimento proposto – o Microsoft Visual Studio. Entre eles, podemos destacar a estrutura de criação de projetos e soluções, os componentes visuais e as ferramentas para depuração de código.

Você poderá observar ainda a criação de um projeto que, apesar de simples, servirá como base para utilização do ambiente de desenvolvimento para projetos de qualquer tamanho ou necessidade.

N d ê á i d NET F k bé h id “ NET” (d ú i “d

CONVITEÀLEITURA

Recursos do Ambiente de Desenvolvimento. Inovações na Linguagem e Sintaxe. Utilizando Windows Forms e Respectivos Controles

O .NET Framework foi desenvolvido pela Microsoft com o objetivo de criar um mecanismo único de desenvolvimento, compilação, construção e execução de aplicações. O .NET Framework se sustenta em dois pilares: o da CLR e o da FCL.

PORDENTRODOTEMAPORDENTRODOTEMA

PORDENTRODOTEMAA CLR (Common Language Runtime) é um ambiente de execução independente de linguagem e plataforma, ou seja,

ser distribuído para qualquer sistema operacional ou servidor web que faça utilização do .NET Framework.

A CLR tem capacidade de interagir com várias linguagens, tais como Visual C++, Visual C#, Visual Basic, JavaScript e Visual F#. Este curso será fundamentado em Visual C#, pois, por ser baseado em C / Java, possui uma rápida curva de aprendizagem graças aos conteúdos anteriores. No entanto, todo conteúdo referente ao ambiente de desenvolvimento e seus componentes se comporta da mesma forma caso você queira experimentar outras linguagens.

A FCL (Framework Class Library) detalha um conjunto padrão de bibliotecas, no qual armazenam-se classes, interfaces e tipos de dados. Nela se encontram as classes primordiais ao desenvolvimento, dentro dos namespaces System, System.Data, System.Collections, etc.

Neste curso, será utilizada a versão 2010 do Microsoft Visual Studio, o qual tem sua tela inicial reproduzida na Figura 1.1.

Figura 1.1 Tela inicial do Microsoft Visual Studio 2010

Page 3: SEMI Linguagem de Programacao Comercial 01

Todo desenvolvimento realizado no Visual Studio é criado como um projeto. Para iniciar um novo projeto, você deve acessar o menu File > New > Projetc..., conforme mostrado na Figura 1.2.

Figura 1.2 Criação de novo projeto

PORDENTRODOTEMA

a Figura 1.3.

Figura 1.3 Tipos de Projetos

Existem vários tipos de projetos, conforme demonstrado na Figura 1.3. Dentre eles, os mais utilizados são:

Windows Application: projeto para criação de aplicativos que serão executados diretamente no computador do

com extensão .exe.

PORDENTRODOTEMA

Page 4: SEMI Linguagem de Programacao Comercial 01

Console Application: programas criados neste tipo de projeto também geram arquivos com extensão .exe, tal como o Windows Application. No entanto, seu resultado é uma tela de Prompt de Comando que, por ser mais simples, exige menos recurso do computador que está executando o programa. Em contrapartida, a interface com o usuário é diminuída, sendo utilizadas somente entradas via teclado.

ASP.NET Web Application: este projeto cria uma série de páginas que serão interpretadas por um servidor de aplicação web, tal como o IIS (Internet Information Services) da própria Microsoft. O cliente acessa a aplicação via browser e todo o processamento é realizado pelo servidor.

O primeiro projeto que será utilizado como base neste tema será um Console Application, conforme mostrado na Figura 1.4.

Figura 1.4 Criação do projeto TADSConsoleApp

PORDENTRODOTEMA

Repare que, ao criar o projeto, é apresentada a opção da criação de uma Solution. Esse recurso é utilizado para que sejam agrupados vários projetos que, embora de tipos diferentes, fazem parte da mesma solução. Por exemplo, uma solução pode conter um projeto ASP.NET Web Application responsável por uma loja virtual, um projeto Windows Forms Application para que os funcionários internos gerenciem a operação da empresa e um projeto Console Application para automação do controle do estoque com utilização de leitores de código de barras.

A Figura 1.5 mostra o resultado da criação da aplicação, bem como o primeiro código-fonte já iniciado pelo próprio ambiente de desenvolvimento.

Figura 1.5 Projeto TADSConsoleApp e o código fonte Program.cs

O programa se inicia com a declaração de namespace, e, para utilizar as bibliotecas, emprega-se a diretiva Using. Sendo assim, caso o programa utilize arquivos externos, tais como arquivos .CSV1, deverá ser declarado o namespace

1 A extensão .CSV (Comma Separated Values) refere-se a arquivos mais robustos compostos por dados tabelados, o que se também conhece como sendo uma implementação de arquivos do tipo . txt. Esses arquivos são descritos em forma de registros separados por caracteres como vírgulas, ponto e vírgulas, tabulações e aspas (“ ”). Permitem fácil manipulação de dados. (GDAL- Geospatial Data Abstraction Library. Disponível em: <http://www.gdal.org/drv_csv.html>. Acesso em: 12.09.2014)

PORDENTRODOTEMA

Page 5: SEMI Linguagem de Programacao Comercial 01

using System.IO;

namespace TADSConsoleApp

{

class Program

{

static void Main(string[ ] args)

{

}

}

Figura 1.6 Namespace System.IO.

utilizar funções criadas neste programa, desde que este mesmo namespace seja referenciado.

O programa segue com a declaração de classe, a qual contém métodos e atributos que serão consumidos e utilizados pela aplicação. O primeiro método da classe Program, que foi criado automaticamente, é o método Main, obrigatório para toda classe.

O primeiro programa executado neste tema será o clássico Hello World. Para isso, será utilizada a classe Console, que está contida no namespace System. O método Writeline será utilizado para que a informação seja escrita no prompt. Depois disso, o método ReadKey faz com que seja aguardado o pressionar de qualquer tecla. O código-fonte e a sua execução podem ser respectivamente vistos na Figura 1.7.

using System;

using System.IO;

PORDENTRODOTEMA

namespace TADSConsoleApp

{

class Program

{

static void Main(string[ ] args)

{

Console.WriteLine(“Hello World”);

Console.WriteLine(“=================”);

Console.ReadKey();

}

}

}

Figura 1.7 Fonte Hello World e Execução do Programa em Prompt

PORDENTRODOTEMA

Page 6: SEMI Linguagem de Programacao Comercial 01

Até o momento, somente informações foram exibidas, mas nenhum dado foi capturado. Para que isso seja feito, o método ReadLine da classe Console será utilizado, conforme mostra a Figura 1.8. Essa informação será armazenada em uma variável, e seu conteúdo será impresso em tela logo em seguida.

using System;

using System.IO;

namespace TADSConsoleApp

{

class Program

{

static void Main(string[ ] args)

{

Console.WriteLine(“Hello World”);

Console.WriteLine(“=================”);

Console.Write(“Digite seu nome: “);

string nome;

nome = Console.ReadLine();

Console.WriteLine(“=================”);

Console.WriteLine(“Seja bem-vindo, {0}”, nome);

Console.ReadKey();

}

}

}

PORDENTRODOTEMA

Figura 1.8 ReadLine e WriteLine com container para a variável nome

PORDENTRODOTEMA

Page 7: SEMI Linguagem de Programacao Comercial 01

As próximas estruturas a serem utilizadas serão explanadas através de um projeto em que seja possível a utilização de uma interface mais amigável. Para isso, será criado um novo projeto que faz parte da mesma solução anterior (TADSApps),

solution” (acrescentar à solução).

Figura 1.9 Criação do Projeto Windows Form

Explorer, no qual é possível visualizar todas as estruturas criadas até o momento no projeto.

PORDENTRODOTEMA

Figura 1.10 Solution Explorer com os dois projetos

Será criado um novo Windows Form com o nome HelloWorld, no projeto TADSWinFormApp. Para este formulário, alguns componentes visuais serão utilizados, tais como Button, TextBox e Label, que se encontram, todos, no dock Toolbox, que pode ser visto na Figura 1.11.

PORDENTRODOTEMA

Page 8: SEMI Linguagem de Programacao Comercial 01

Figura 1.11 Toolbox

Para utilizar qualquer um desses componentes, basta arrastá-los para a área desejada no Windows Form. A maioria

operações de tempo em tempo), OpenFileDialog (que abre uma caixa de diálogo para solicitar a abertura de um arquivo) ou BackgroundWorker (que implementa várias tarefas sendo processadas simultaneamente) são exibidos em uma área abaixo do Windows Form.

No novo HelloWorld, os componentes serão utilizados como mostra a Figura 1.12.

PORDENTRODOTEMA

Figura 1.12 Windows Form HelloWorld

sentido, facilitando o trabalho. Para renomeá-los, basta alterar a propriedade Name de cada um dos componentes, o que pode ser feito através do dock Properties, como demonstrado na Figura 1.13, em que são mostradas as propriedades do objeto ComboBox.

PORDENTRODOTEMA

Page 9: SEMI Linguagem de Programacao Comercial 01

Figura 1.13 Dock Properties

para o ComboBox, utilizou-se “cbx”.

Todos os componentes que recebem uma lista de dados, tais como ComboBox, ListBox ou DataGridView, possuem um atalho em cima do componente visual, quando este está selecionado. Esse atalho é chamado de action tag e auxilia na criação dos itens que serão inseridos na lista. Essa opção pode ser vista no objeto ComboBox na Figura 1.14.

PORDENTRODOTEMA

Figura 1.14 Action Tag no ComboBox

Ao clicar em Edit Items, o Visual Studio apresenta o recurso String Collection Editor, no qual as opções que poderão ser selecionadas no ComboBox podem ser inseridas, como pode ser visto na Figura 1.15.

Figura 1.15 String Collection Editor

PORDENTRODOTEMA

Page 10: SEMI Linguagem de Programacao Comercial 01

Cada um dos componentes visuais que recebem uma lista de dados possui uma resposta diferente ao action tag. Para o caso de componentes complexos como o DataGridView, são dadas opções para criar o nome de cada coluna, bem como o tipo que será armazenado. Também é dada a opção de criar cada um dos registros que serão exibidos.

Button que acontecerá ao clicar no botão. A lista de eventos pode ser acessada no dock Properties, clicando-se no ícone

Figura 1.16 Eventos no Dock Properties

Ao clicar duas vezes, a estrutura básica já para responder ao evento é criada automaticamente, como demonstra a Figura 1.17.

PORDENTRODOTEMA

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace TADSWinFormApp

{

public partial class HelloWorld : Form

{

public HelloWorld()

{

InitializeComponent();

}

private void btnProcessar_Click(object sender, EventArgs e)

{

}

}

}

Figura 1.17 Código-fonte com o método btnProcessar_Click criado automaticamente

PORDENTRODOTEMA

Page 11: SEMI Linguagem de Programacao Comercial 01

Repare que existe uma grande lista de namespaces importados automaticamente. Para remover os que não são necessários, clique com o botão direito no código e utilize a opção Organize Usings > Remove Unused Usings.

O objetivo desse código é mostrar no Label lblResultado uma mensagem de boas-vindas. Para isso, deve-se utilizar o código mostrado na Figura 1.18.

using System;

using System.Windows.Forms;

namespace TADSWinFormApp

{

public partial class HelloWorld : Form

{

public HelloWorld()

{

InitializeComponent();

}

private void btnProcessar_Click(object sender, EventArgs e)

{

lblResultado.Visible = true;

}

}

Figura 1.18 Código-fonte com mensagem de boas-vindas

PORDENTRODOTEMA

Para executar e testar tudo que foi feito até o momento, deve ser utilizado o comando Debug > Start Debug, seu atalho F5, ou então o ícone da seta verde mostrado na barra de ferramentas. A execução e o teste realizado são mostrados na Figura 1.19.

Figura 1.19 Execução do projeto TADSWinFormApp.

não deve ser mostrado ou, então, para o caso de o nome estar em branco, uma mensagem de erro deve ser mostrada. O código-fonte melhorado pode ser visto na Figura 1.20.

PORDENTRODOTEMA

Page 12: SEMI Linguagem de Programacao Comercial 01

using System;

using System.Windows.Forms;

namespace TADSWinFormApp

{

public partial class HelloWorld : Form

{

public HelloWorld()

{

InitializeComponent();

}

private void btnProcessar_Click(object sender, EventArgs e)

{

{

{

}

else

{

lblResultado.Text = “Seja bem-vindo, “ + txbNome.Text;

PORDENTRODOTEMA

}

}

else {

lblResultado.Text = “Aguardando nome válido...”;

}

lblResultado.Visible = true;

}

Boolean tudoOk = true;

if (txbNome.Text == “”)

{

tudoOk = false;

MessageBox.Show(“ERRO! Nome de usuário inválido”);

}

return tudoOk;

}

}

}

Figura 1.20

PORDENTRODOTEMA

Page 13: SEMI Linguagem de Programacao Comercial 01

Para auxiliar nos testes e nas depurações necessárias durante a programação, o Visual Studio possui uma excelente

então pela opção Debug > Toggle Breakpoint. Sua ativação é indicada por uma marca vermelha ao lado do código, como se pode ver na Figura 1.21.

Figura 1.21 Breakpoint

sendo seguido pode ser acompanhado pelo programador. Durante a operação de debug, a linha de código que está sendo executada naquele momento é indicada pela cor amarela, bem como por uma seta amarela ao lado do código, como se pode ver na Figura 1.22.

PORDENTRODOTEMA

Figura 1.22 Operação de Debug

Para passar à próxima linha logo abaixo, deve ser utilizado o atalho F10, ou então o comando Debug > Step Over. Para continuar a execução sem que seja necessário passar linha a linha, deve ser utilizado o atalho F5, ou então o comando Debug > Continue.

Outra opção para depuração do código é o uso do Watch. Esse recurso possibilita ver o conteúdo das variáveis ou então de comparação lógicas em tempo de execução, sem necessidade de que o resultado seja impresso em tela ou no console. Para isso, basta selecionar o trecho de código que deseja visualizar no recurso Watch, clicar com o botão direito e escolher a opção Add Watch. Na Figura 1.23, tanto essa opção como o dock Watch 1 (que exibe as informações de cada linha solicitada) podem ser vistos.

PORDENTRODOTEMA

Page 14: SEMI Linguagem de Programacao Comercial 01

Figura 1.23 Watch

Para uma visualização de conteúdo pontual, a ferramenta disponibiliza um recurso que possibilita a visualização sem utilizar o Watch. Para isso, posicione o mouse em cima do objeto para que, então, uma janela seja aberta com as

PORDENTRODOTEMA

Figura 1.24 Visualização rápida de conteúdo

PORDENTRODOTEMA

ACOMPANHENAWEBMSDN – Visual Studio 2013

Portal disponibilizado pela Microsoft com os principais links para uso da ferramenta e o aprendizado das linguagens de programação suportadas pelo .NET Framework.

Disponível em: <http://msdn.microsoft.com/pt-br/library/dd831853.aspx>. Acesso em: 2 set. 2014.

MSDN – .NET Framework 4.5Portal contendo todas as informações sobre o .NET Framework, incluindo as últimas

atualizações realizadas, contempladas na versão 4.5.

Disponível em: . Acesso em: 2 set. 2014.

Page 15: SEMI Linguagem de Programacao Comercial 01

AGORAÉASUAVEZ

Instruções:Agora, chegou a sua vez de exercitar seu aprendizado. A seguir, você encontrará algumas questões de múltipla escolha e dissertativas. Leia cuidadosamente os enunciados e atente-se para o que está sendo pedido.

Questão 1

Utilizando o conceito de solução e projeto visto neste caderno, dê um exemplo completo de uma solução indicando qual é o tipo de cada projeto, para um cliente que seja um parque de diversões.

Questão 2

Assinale a(s) alternativa(s) correta(s).

São os pilares do .NET Framework:

a) ( ) CRL – Commom Language Runtime.

b)

c) ( ) AFDW –

d) ( ) FCL –

e) ( ) LFA –

AGORAÉASUAVEZAGORAÉASUAVEZAGORAÉASUAVEZ

Questão 3

a)

b)

c) ( ) Breakpoint.

d) ( ) Watch.

e) ( ) TextBox.

Questão 4

Crie um projeto em Console Application que receba o nome completo de um funcionário, seu cargo, o seu salário, uma taxa percentual para aumento do salário e uma entrada que indique se esse funcionário receberá um bônus de R$ 230,00 em seu salário.

Regras:

O nome do funcionário deve conter ao menos um nome e um sobrenome.

A taxa percentual não deve ser maior que 27,8% e não deve ser inferior a 7,4%.

Se for aplicado o bônus, ele deverá ser aplicado após a taxa percentual.

Imprimir em tela o nome completo do funcionário, seu cargo e seu novo salário. Caso seja encontrado algum erro, este deve ser mostrado e o programa deve ser abortado.

AGORAÉASUAVEZAGORAAGORAAGORAAGORAAGORAAGORAAGORAÉÉÉÉÉÉÉAAAAAAASUASUASUASUASUASUASUAVEZVEZVEZVEZVEZVEZVEZAGORAÉASUAVEZ

Page 16: SEMI Linguagem de Programacao Comercial 01

Questão 5

Faça a portabilidade do programa da Questão 4 para um projeto Windows Form, adicionando os seguintes recursos:

ListBox para mostrar os erros gerados durante o processamento.

Embora não seja necessário utilizar este padrão, segue sugestão de formulário:

AGORAÉASUAVEZ

FINALIZANDO

Embora o projeto mostrado neste caderno tenha sido simples, agora chegou a vez de, com sua bagagem em linguagens de programação, utilizar o Visual Studio 2010 para criar excelentes projetos e soluções.

Essa incrível ferramenta pode ser utilizada para a criação de softwares baseados em desktop, como vimos neste caderno. Além disso, pode ser base para desenvolvimento de aplicativos baseados em soluções-web através do ASP.NET ou então soluções de mobilidade com Windows 8, Windows Phone.

Graças ao aproveitamento de conceitos de outras linguagens, como Java, C ou Visual Basic, utilizar o .NET Framework torna-se mais fácil para alguém que, como você, já possui experiências anteriores.

Um especialista em .NET pode estar inserido em diversas áreas do mercado de trabalho, visto que essa ferramenta atende desde pequenos programas isolados até grandes soluções integradas, desde sua interface básica via console até complexos portais web.

REFERÊNCIASGDAL (Geospatial Data Abstraction Library). Comma Separated Values (.csv). Disponível em: <http://www.gdal.org/drv_csv.html>. Acesso em: 12 set. 2014.

LOTAR, Alfredo. Como Melhorar a Performance de Websites .NET. Os segredos dos sites de alto desempenho. 1. ed. São Paulo: Novatec, 2013.

MSDN. Visual Studio. 2013. Disponível em: <http://msdn.microsoft.com/pt-br/library/dd831853.aspx>. Acesso em 02.09.2014.

________. .NET Framework 4.5. Disponível em: . Acesso em 02.09.2014.

Page 17: SEMI Linguagem de Programacao Comercial 01

GLOSSÁRIOClasse: estrutura composta de métodos e atributos, a qual representa um conjunto de objetos com as mesmas carac-terísticas.

Objeto: é a instância de uma classe.

Atributos: características de um objeto.

Método: funcionalidades de um objeto.

GABARITOQuestão 1

Resposta: A solução seguinte é um exemplo de resposta, sendo a intenção desta pergunta a de analisar se você entendeu o conceito de solução/projeto.

Solução – Parque de Diversões

- Projeto – Windows Form – Venda de ingressos.

- Projeto – Windows Form – Controle de chamados de manutenção.

- Projeto – Console Application – Controle de catraca.

- Projeto – WebForm – Site de vendas.

- Projeto – WebForm – Site institucional.

Questão 2

Resposta: Alternativa A e D.

São as duas opções corretas, já citadas no texto. As demais são apenas siglas que possuem a palavra framework integrando o seu nome.

Questão 3

Resposta: Alternativa C e D.

São os dois recursos abordados no decorrer do caderno como opções para executar depuração.

Os demais são:

Build: comando para compilar e gerar executável do projeto.

Toolbox: dock no qual são armazenados todos os objetos visuais a serem utilizados em um projeto Windows Form Application.

TextBox: objeto visual que cria uma caixa de textos em um formulário do Windows Form Application ou de um WebForm.

Questão 4Resposta:

using System;

using System.IO;

namespace TADSConsoleApp

{

class Ex04

{

static void Main(string[ ] args)

Page 18: SEMI Linguagem de Programacao Comercial 01

{

Boolean tudoOk = true;

Console.WriteLine(“Exercicio 04”);

Console.WriteLine(“=================”);

Console.Write(“Nome: “);

string nome = Console.ReadLine();

Console.Write(“Sobrenome: “);

string sobrenome = Console.ReadLine();

Console.Write(“Cargo: “);

string cargo = Console.ReadLine();

Console.Write(“Salário Atual: “);

double salAtual = Convert.ToDouble(Console.ReadLine());

Console.Write(“Taxa percentual: “);

double percentual = Convert.ToDouble(Console.ReadLine());

Console.Write(“Bônus? S/N): “);

string bonus = Console.ReadLine();

Console.WriteLine(“Erros Encontrados: “);

Console.WriteLine(“=================”);

if (nome == “” | sobrenome == “”)

{

Console.WriteLine(“ - Deve ser digitado nome e sobrenome”);

tudoOk = false;

}

if (percentual < 7.4 | percentual > 27.8)

{

Console.WriteLine(“ - Percentual deve estar entre 7.4% e 27.8%”);

tudoOk = false;

}

if ((bonus != “S”) & (bonus != “N”))

{

Console.WriteLine(“ - Bonus deve ser registrado como S ou N”);

tudoOk = false;

}

if (tudoOk)

{

Console.WriteLine(“ - Nenhum erro encontrado”);

}

Console.WriteLine(“=================”);

if (tudoOk)

{

double novoSalario = salAtual + (salAtual*percentual/100);

if (bonus == “S”)

{

novoSalario += 230;

Page 19: SEMI Linguagem de Programacao Comercial 01

}

Console.WriteLine(“=================”);

Console.WriteLine(“{0} {1}, {2} - Novo Salário: {3}”, nome, sobrenome, cargo, novoSalario );

}

Console.ReadKey();

}

}

}

Clique aqui para retornar na sessão Agora é Sua Vez

Questão 5

Resposta:

using System;

using System.Windows.Forms;

namespace TADSWinFormApp

{

public partial class Ex05 : Form

{

Boolean tudoOk = true;

public Ex05()

{

InitializeComponent();

}

private void btnProcessar_Click(object sender, EventArgs e)

{

listBox1.Items.Clear();

double salario = Convert.ToDouble(txbSalario.Text);

double percentual = Convert.ToDouble(txbPercentual.Text);

if (txbNome.Text == “” | txbSobrenome.Text == “”)

{

listBox1.Items.Add(“Nome e Sobrenome precisa ser preenchido”);

tudoOk = false;

}

if (percentual < 7.4 | percentual > 27.8)

{

listBox1.Items.Add(“ - Percentual deve estar entre 7.4% e 27.8%”);

tudoOk = false;

}

if (tudoOk)

{

listBox1.Items.Add(“ - Nenhum erro encontrado”);

Page 20: SEMI Linguagem de Programacao Comercial 01

}

if (tudoOk)

{

double novoSalario = salario + (salario * percentual / 100);

if (ckbBonus.Checked)

{

novoSalario += 230;

}

lblResultado.Text = (txbNome.Text + “ “ + txbSobrenome.Text + “, “ + cbxCargo.SelectedItem + “ - Novo Salario: R$” + novoSalario.ToString());

lblResultado.Visible = true;

}

}

private void Ex05_Load(object sender, EventArgs e)

{

cbxCargo.Items.Add(“Assistente”);

cbxCargo.Items.Add(“Analista”);

cbxCargo.Items.Add(“Coordenador”);

cbxCargo.Items.Add(“Gerente”);

cbxCargo.Items.Add(“Diretor”);

}

[STAThread]

static void Main()

{

Application.EnableVisualStyles();

Application.SetCompatibleTextRenderingDefault(false);

Application.Run(new Ex05());

}

}

}

Clique aqui para retornar na sessão Agora é Sua Vez

Page 21: SEMI Linguagem de Programacao Comercial 01