• Nenhum resultado encontrado

MINICURSO DE INTRODUÇÃO A PROGRAMAÇÃO EM C

N/A
N/A
Protected

Academic year: 2022

Share "MINICURSO DE INTRODUÇÃO A PROGRAMAÇÃO EM C"

Copied!
17
0
0

Texto

(1)

UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE TECNOLOGIA

FACULDADE DE ENGENHARIA ELÉTRICA E BIOMÉDICA PROGRAMA DE EDUCAÇÃO TUTORIAL DE ENGENHARIA

ELÉTRICA – PET-EE

MINICURSO DE INTRODUÇÃO A PROGRAMAÇÃO EM C

AUTORES:

ARMANDO TADAO GOMES NAKAMARU GABRIEL BASTOS DE SOUZA SILVA

JUAN COSTA DA COSTA ISAIAS JEAN MARTINS BARROS MATHEUS CHAVES SILVA RAFAEL AUGUSTO DIAS REZENDE SARAH MATOS TRINDADE AMORAS

BELÉM – PA 2016

(2)

SUMÁRIO

1) ALGORIMOS 3

2) A LINGUAGEM C 4

3) TIPOS DE VARIÁVEIS 4

4) CONHECENDO O DEV C++ 5

5) COMADOS BÁSICOS 5

6) ESTRUTURA GERAL BÁSICA DE PROGRAMAS 6

7) BIBLIOTECAS 6

8) CRIANDO E EXECUTANDO UM NOVO ARQUIVO 7

9) DECLARAÇÃO E INSERÇÃO DE VARIÁVEIS 10

9.1) DECLARAÇÃO 10

9.2) INSERÇÃO 11

10) EXERCÍCICOS – COMANDOS DE ENTRADA E SAÍDA 12

11) ESTRUTURAS DE SELEÇÃO 13

11.1) O COMANDO IF-ELSE 14

12) EXERCÍCICOS – COMANDO IF-ELSE 16

13) REFERÊNCIAS BBILIOGRÁFICAS 17

(3)

1. ALGORITMOS

É um conjunto de instruções cujas execuções redundam na realização da tarefa para a qual foi desenvolvido, o desenvolvimento de um programa requer a utilização de um raciocínio ímpar em relação aos raciocínios utilizados na solução de problemas de outros campos do saber. Por exemplo (e de forma simplificada) ao se tentar resolver um problema de Mecânica Newtoniana deve-se procurar capturar da especificação da questão as grandezas físicas envolvidas e aplicar as fórmulas que relacionam estas grandezas.

Para se desenvolver um programa que resolva um determinado problema é necessário que encontremos uma sequência de instruções que cujas execuções resultem na solução da questão. É comum se utilizar o termo algoritmo para indicar uma sequência de instruções que resolvem um dado problema, ficando, neste caso, o termo programa para indicar um algoritmo que pode ser executado num computador.

A Lógica de Programação pode ser entendida como o conjunto de raciocínios utilizados para o desenvolvimento de algoritmos (e, portanto, de programas).

Por exemplo, imagine a seguinte questão: um senhor, infelizmente bastante gordo, está numa das margens de um rio com uma raposa, uma dúzia de galinhas e um saco de milho. O senhor pretende atravessar o rio com suas cargas, num barco a remo que só comporta o senhor e uma das cargas. Evidentemente, o senhor não pode deixar em uma das margens, sozinhos, a raposa e a galinha, nem a galinha e o milho. A questão é escrever um algoritmo que oriente o senhor a realizar o seu intento. Naturalmente, na primeira viagem, ele não pode levar a raposa (neste caso, as galinhas comeriam o milho), nem o milho (caso em que a raposa devoraria as galinhas). Logo, na primeira viagem ele deve levar as galinhas. Como ele estará presente na chegada, na segunda viagem ele pode levar a raposa ou o milho. Mas, e a volta para apanhar terceira carga? A solução é ele voltar com as galinhas e, aí, atravessar o milho, já que não há problema em que a raposa e o milho fiquem juntos.

Escrevendo as instruções na sequência em que elas devem ser executadas, teremos o seguinte algoritmo.

1. Atravesse as galinhas.

2. Retorne sozinho.

3. Atravesse a raposa.

4. Retorne com as galinhas.

5. Atravesse o milho.

6. Retorne sozinho.

7. Atravesse as galinhas.

(4)

2. A LINGUAGEM C

A linguagem de programação C é uma linguagem estruturada e padronizada criada na década de 1970 por Ken Thompson e Dennis Ritchie para ser usada no sistema operacional Unix. Desde então espalhou-se por muitos outros sistemas operacionais e tornou-se uma das linguagens de programação mais usadas. A linguagem C tem como ponto forte a sua eficiência e é a linguagem de programação de preferência para o desenvolvimento de aplicações para sistemas operacionais, apesar de também ser usada para desenvolver aplicações mais complexas.

Há um ponto importante da linguagem C que deve ser ressaltado: o C é Case Sensitive, isto é, maiúsculas e minúsculas fazem diferença. Se declarar uma variável com o nome soma ela será diferente de Soma, SOMA, SoMa ou sOmA. Da mesma maneira, os comandos do C if e for, por exemplo, só podem ser escritos em minúsculas pois, senão, o compilador não irá interpretá-los como sendo comandos, mas sim como variáveis.

Todas as linguagens de programação têm palavras reservadas. As palavras reservadas não podem ser usadas a não ser nos seus propósitos originais, isto é, não é possível declarar funções ou variáveis com os mesmos nomes. Como o C é case sensitive pode-se declarar uma variável For, apesar de haver uma palavra reservada for, mas isto não é uma coisa recomendável de se fazer, pois pode gerar confusão.

PALAVRAS RESEVADAS A LINGUAGEM C

auto break case char const

continue return return if else

while Do for void int

float

3. TIPOS DE VARÁVEIS

Uma variável simples (ou simplesmente variável) é uma posição de memória cujo conteúdo pode ser modificado durante a execução de um programa. A referência a uma variável no programa é feita através do seu identificador; os valores que podem ser nela armazenados dependem do seu tipo de dado.

O tipo de dado associado a uma variável é o conjunto dos valores que podem ser nela armazenados. A linguagem C dispõe dos tipos de dados discriminados na tabela a seguir.

(5)

TIPOS DE VARIÁVEIS

Denominação Número de Bytes Conjunto de valores

Char 1 Caracteres codificados no código ASCII

Int 2 Números inteiros de –32768 a 32767

Float 4 Números reais de –3,4x1038 a –3,4x10-38 e 3,4x10-38 a 3,4x1038

Double 8 Números reais de –1,7x10308 a -1,7x10-308 e 1,7x10-308 a 1,7x10308

Vale lembrar que, de um modo geral, um byte contém oito bits (E o que seria o bit?) e cabe ressaltar que, em algumas situações, é importante se conhecer a quantidade necessária de bytes para uma variável de um determinado tipo.

4. CONECHENDO O DEVC++

5. COMANDOS BÁSICOS

Em todos os programas existem alguns comandos básicos que nos ajudam de diversas maneiras, desde uma questão meramente estética até uma pause no programa durante a execução (para que seja possível sua visualização).

Entre outros comandos temos alguns “principais”, listados abaixo:

(6)

printf(“frase”); - Inserção de textos no programa e/ou impressão de variáveis na tela.

system(”pause”); - Pausa o programa durante sua execução.

break; - Pausa execuções no programa

\n – Pula uma linha no programa

\t – Dá um espaçamento lateral.

// TEXTO OU /* TEXTO - Inserção de comentários.

6. ESTRTURA GERAL BÁSICA DE PROGRAMAS

Um programa básico deve ter no mínimo uma função básica, que pode ser desde uma função básica como fazer uma operação matemática ou exibir uma mensagem. No programa da figura abaixo a função básica dele é exibir a mensagem

“Minicurso C”. Veja o exemplo abaixo:

7. BIBLIOTECAS

Em muitos programa o DevC++ não reconhecerá alguns comandos que serão escritos, quando isso acontece é porque o DevC++ não encontrou em sua biblioteca principal o código (Instrução) em questão. Para se resolver esse problema basta que se inclua a biblioteca antes do “corpo principal” do programa com o comando #include

<nome da biblioteca>. Podemos verificar essa inclusão na imagem do tópico 5dessa apostila.

Exemplos de biblioteca:

(7)

 <math.h> - Funções matemáticas

 <stdio.h> - Manipulação de entrada e saída

<stdlib.h> - Operações incluindo conversão, alocação de memória e etc..

8. CRIANDO E EXECUTANDO UM NOVO ARQUIVO

Para que se possa escrever um programa e em seguida se possa execultá-lo, é necessário se seguir alguns passos que serão listados abaixo.

Clique em "File", localizado no canto superior esquerdo;

 Em seguida, clique em "New", logo abaixo;

 Ao clicar "Source File", uma área em branco ficará disponível para digitar os códigos;

 Com isso, será possível criar um código, como mostrado abaixo;

(8)

• Após fazer o programa, para não perdê-lo, será preciso salvá-lo;

• Em "File" clique em "Save As..." e com isso aparecerá uma janela;

• Nesta janela, o arquivo automaticamente estará salvo como C++ no "Tipo".

Com isso se deve alterar o tipo para C, pois é a linguagem que está sendo usada;

(9)

• Se o programa estiver feito, ou parte dele, é possível testá-lo compilando e executando o mesmo;

• Em "Execute" estará a opção de compilar (Compile), executar (Run) e compilar e executar (Compile & Run);

• Caso haja algum erro no programa, será mostrado logo em seguida dele. No caso do exemplo abaixo, o erro está na falta do símbolo “;” antes da linha 5, ou seja, não foi colocado no final da linha 4;

(10)

• Se não há erros, o programa irá executar, mostrando uma tela de fundo negro com o programa em execução.

9. DECLARAÇÃO E INSERÇÃO DE VARIÁVEIS 9.1. DECLARAÇÃO

Para que possamos utilizar as variáveis no programa primeiro precisamos declara-las antes da estrutura geral do programa. Caso isso não seja feito o compilador

(11)

não reconhecerá a variável sendo então impossível que as ações que necessitem daquela variável sejam executadas ou mesmo dependendo do programa o programa não seja compilado fazendo-se impossível sua execução.

Veja o exemplo:

main() {

int a, b, c;

a= 3;

b = 2;

c= a + b;

printf(“O resultado da soma será: %i \n\n”, c);

system(“pause”);

}

Como podemos ver a varável c não foi declarada no programa, logo o compilador não a reconhecerá e indicará na janela de erros que a variável não foi declarada.

TABELA DE DECLARAÇÃO DE VARIÁVEIS TIPO DE VARIÁVEIS DECLARANDO NO Dev

C++

CONFIGURAÇÃO DE OUTPUT

INTEIRA int %i

REAL float %f

CARACTER char %c

9.2. INSERÇÃO

Para utilizarmos uma variável no programa, caso ela já não esteja pré-definida, como um valor ou uma “palavra” fixa devemos utilizar alguns comandos e através deles atribuir “valores” a essas variáveis, para que então essa possa ser manipulada no programa de acordo com o que o programador desejar.

Atribuir valores a uma variável, do tipo int, por exemplo, não significa apenas atribuir um valor numérico a ela, mas também pode se associar esse valor à determinada opção, por exemplo, veja o programa:

(12)

#include <stdio.h>

#include <math.h>

main() {

int x, a;

printf("Digite um numero inteiro\n");

scanf("%i",&a);

printf("Digite 1 se o numero for par e 2 se o numero for impar: \n");

scanf("%i",&x);

if (x==1)

printf("O numero e par e vale: %i\n\n", a);

else if (x==2)

printf("O numero e impar e vale: %i\n\n", a);

else

printf("Opcao invalida\n\n");

system("pause");

}

Existem alguns comandos de inserção de variáveis na linguagem C, nesta apostila abordaremos apenas dois que são considerados “principais”, são eles o comando

“scanf” e o “getchar”. Agora iremos explicar como eles podem ser inseridos no programa para que possam ser então utilizados.

9.2.1. O COMANDO SCANF Sintaxe:

scanf(“formato”, endereços_argumentos);

Para realizar a entrada de valores para as variáveis deve ser utilizada a função scanf. A sintaxe desta função é muito parecida com o printf. Primeiramente, são informados quais os formatos que serão fornecidos no terminal, depois os endereços das variáveis que irão receber estes valores.

(13)

O formato segue a mesma sintaxe do comando printf, sendo obrigatório colocar um formato, especificado através do caractere ‘%’, e a letra indicando o formato.

Para especificar o endereço de uma variável, necessário para que a função scanf localize a variável na memória, deve-se colocar o caractere ‘&’ antes do nome da variável, indicando assim que se está passando o endereço da variável e não o seu valor. Veja o exemplo:

10. EXERCÍCIOS – COMANDOS DE ENTRADA E SAÍDA Exercícios na apostila de exercícios

11. ESTRUTURAS DE SELEÇÃO

Até este momento nossos programas seguiam os mesmos passos: declarávamos variáveis, atribuíamos valores à elas, algum processamento era feito e imprimiríamos algum dado da tela. Ao se aprender estruturas de seleção poderemos ter uma complexidade maior em nossos algoritmos.

Analise as afirmações abaixo sobre o enigmático curso de Engenharia Elétrica:

1. Os alunos de Engenharia Elétrica se formam sem reprovar.

2. Os alunos de Engenharia Elétrica, que estudam muito e não veem a luz do sol, se formam sem reprovar.

(14)

3. Entrada de calouros de Engenharia Elétrica a partir da classificação do vestibular, sendo 40 no primeiro semestre e 40 no segundo.

Na primeira situação, qualquer aluno se formaria sem reprovar o que seria equivalente a um comando sequencial. Já na segunda, só se formariam sem reprovar os que estudassem demais mesmo.

Na terceira, dependendo da classificação, o aluno pode entrar no primeiro ou segundo semestre. Assim, o andamento das duas últimas situações está condicionado a um elemento e é disso que as estruturas de seleção vão tratar.

11.1. O COMANDO IF – ELSE.

É uma estrutura de controle de fluxo, executando um ou vários comandos se a condição testada for verdadeira e, em alguns casos, executando um ou vários comandos se for falsa.

(15)

EXEMPLO 1:

#include <stdio.h>

#include <math.h>

int main() {

int a;

printf("### ESSE PROGRAMA AVISARA SE O NUMERO DIGITADO

### \n \t \t ### EH MAIOR, MENOR OU IGUAL A 10 ### \n \n");

printf("digite um numero \n");

scanf("%d",&a);

if(a>10)

printf(" \n o numero digitado \n \t SIM \n eh maior que 10!! \n");

else if(a<10)

printf(" \n o numero digitado \n \t NAO \n eh maior que 10!!

\n");

else

if(a==10)

printf(" \n o numero digitado \n \t EH \n igual 10!! \n");

else

system("pause");

}

(16)

EXEMPLO 2:

12. EXERCÍCIOS – COMANDO IF – ELSE

EXERCÍCIOS NA APOSTILA DE EXERCÍCIOS int main()

{

printf("## PROGRAMA QUE RELACIONA 2 NUMEROS ## \n \n ##

E INDICA O MAIOR ## \n \n \n ");

int x, y, maior;

printf("Digite o primeiro numero : ");

scanf("%d", &x);

printf(" Digite o segundo numero : ");

scanf("%d", &y);

if(x > y) maior = x;

else

maior = y;

printf(" O maior numero eh: %d \n", maior);

system(“pause”);

}

(17)

13. REFERÊNCIAS BIBLIOGRÁFICAS

 EVARISTO, Jaime, Aprendendo a Programar Programando em

Linguagem C, Book Express, 2001.

 LAUREANO, Marcos, Programando em C para Linux, Unix e Windows, Brasport, 2005.

 C PROGRESSIVO.NET, Questões Resolvidas Sobre IF ELSE, Disponível em: http://www.cprogressivo.net/2013/02/questoes-resolvidas-sobre- if-else.html, Acesso em: 29 de abr. 2016.

 DIAS, Ângela Vilhena, Lista de exercícios da disciplina Técnicas e Linguagem de Programação, Curso de Engenharia Elétrica, ITEC-UFPA, 2014.

 DIAS, Ângela Vilhena, Lista de exercícios da disciplina Programação Estruturada de Computadores, Curso de Engenharia Biomédica, ITEC- UFPA, 2014.

 PINTO, Wilson Silva, Introdução ao Desenvolvimento de Algoritmos e Estruturas de Dados, Érica, 1996.

 SALIBA, W. L. C., Técnicas de Programação – Uma Abordagem Estruturada, Makron Books, 1993.

 LOPES, A.; GARCIA, G., Introdução à Programação: 500 Algoritmos Resolvidos, Campos, 2002.

 DAMAS, Luís, Linguagem C, LTC, 2007.

Referências

Documentos relacionados

Era de conhecimento de todos e as observações etnográficas dos viajantes, nas mais diversas regiões brasileiras, demonstraram largamente os cuidados e o apreço

O termo extrusão do núcleo pulposo aguda e não compressiva (Enpanc) é usado aqui, pois descreve as principais características da doença e ajuda a

Quando conheci o museu, em 2003, momento em foi reaberto, ele já se encontrava em condições precárias quanto à conservação de documentos, administração e organização do acervo,

Por último, temos o vídeo que está sendo exibido dentro do celular, que é segurado e comentado por alguém, e compartilhado e comentado no perfil de BolsoWoman no Twitter. No

• Qual é a imobilização adequada para cada tipo de fratura ou luxação.. • Quais as vantagens de uma

Pensar a formação continuada como uma das possibilidades de desenvolvimento profissional e pessoal é refletir também sobre a diversidade encontrada diante

Nessa perspectiva, na intenção de fortalecer as ações de gestão da escola por meio de uma possível reestruturação mais consistente e real do PPP; na busca

O período de redemocratização foi consolidado com a edição da Constituição Federal, de 5 de outubro de 1988, instrumento jurídico democrático que restaura a