INSTITUTO DE ENSINO SUPERIOR DO ESPIRITO SANTO FACULDADE DO ESPIRITO SANTO – UNES CURSO DE ENGENHARIA DE PRODUÇÃO 3° PERIODO
AFRANIO RIBEIRO DE SOUZA RAPHAEL CORDEIRO RODRIGUES SILVA VICTOR RAMOS ARAUJO
GUIA DE PROGRAMAÇÃO EM LINGUAGEM C
CACHOEIRO DE ITAPEMIRIM 2013
AFRANIO RIBEIRO DE SOUZA RAPHAEL CORDEIRO RODRIGUES SILVA VICTOR RAMOS ARAUJO
GUIA DE PROGRAMAÇAO EM LINGUAGEM C
Trabalho Acadêmico apresentado á disciplina de Programação de Computadores na Faculdade do Espírito Santo, com requisito parcial de avaliação. Professor: Valderedo Sedano Fontana
CACHOEIRO DE ITAPEMIRIM 2013
SUMÁRIO
1 INTRODUÇÃO ...................................................................................... .................... 03 2 REVISÃO A LITERATURA ......................................................................................... 04 2.1 História da Linguagem C ......................................................................................... 04 2.2 Sintaxe .................................................................................................................... 05 2.2.1 Variaveis............................................................................................................... 05 2.2.2 Printf ..................................................................................................................... 06 2.2.3 Scanf .................................................................................................................... 06 2.2.4 Estrutura seletiva if, else ...................................................................................... 06 2.2.5 Switch, case e default .......................................................................................... 07 3 REFERENCIAL TEÓRICO ....................................................................................... 09
3 TÉCNOLOGIA VERDE .............................................................................................. 10
4 CONCLUSÃO............................................................................................................. 12
5 BIBLIOGRAFIA ......................................................................................................... 13
3
1 INTRODUÇÃO A linguagem C tem suas maiores virtudes na versatilidade, confiabilidade, regularidade e fácil uso (é uma linguagem amigável). Uma das grandes vantagens do C é que ele possui tanto características das linguagens de programação de "alto nível" quanto de "baixo nível", isto é, a linguagem C é um software voltado para o desenvolvimento de programas robustos e eficientes. Para aprendê-lo não é necessário o conhecimento de nenhuma outra linguagem de programação prévia, embora facilite a aprendizagem uma boa familiaridade com computadores e lógica de programação.
4
2 REVISÃO A LITERATURA 2.1 História Da Linguagem C A linguagem C foi criada em 1972 por Dennis Ritchie para ser usada no desenvolvimento sistema operacional Unix no Bell Labs, que na época pertencia à AT&T (hoje parte da Alcatel-Lucent). C foi derivada da linguagem B, desenvolvida por Ken Thompson, que por sua vez se baseou-se na linguagem BCPL. Ritchie e Thompson também participaram da equipe de desenvolvimento do UNIX, cujas primeiras versões foram totalmente desenvolvidas em Assembly. Em um certo momento, eles sentiram a necessidade de uma linguagem mais portável para implementar o Unix no PDP-11. Esta linguagem precisava prover acesso de baixo nível ao hardware (PCU, I/Os e periféricos) e se entender bem com o Assembly, precisava ser portável para que o SO pudesse rodar em diferentes plataformas de hardware, além de ter um bom desempenho e otimizar o uso de memória, principalmente numa época em que estavam começando a surgir as primeiras CPUs, e o preço por byte de memória era caríssimo. Foi portanto destas necessidades que surgiu a linguagem C. Deste então, grande parte das arquiteturas de CPU possuem a implementação de um compilador C. De mainframes, supercomputadores e minicomputadores, a celulares, relógios e torradeiras. É difícil encontrar uma plataforma de hardware sem um compilador C compatível.
5
2.2 Sintaxe
A importância da biblioteca em C é imensa, pois ela nos poupa de muita programação. Uma vez que a função já está pronta dentro da biblioteca, basta importar tal biblioteca e utilizar a função que queremos. O papel do pré-processamento é indicar, antes mesmo de compilar, os parâmetros necessários para ser criado o arquivo executável. O pré-processamento é indicado pelo caractere Sharp (#) no inicio da linha e deve ser usado no início da programação. A importação de uma biblioteca é dada pelo comando INCLUDE (incluir) seguida da biblioteca entre os sinais de menor (<) e maior (>). Em C, a importação de bibliotecas são mais simples, bastando acrescentar para cada biblioteca um include em uma linha diferente e o nome da biblioteca seguido de ponto H (.h) - .h é a extensão do arquivo da biblioteca que vem da palavra inglesa HEADER (cabeçalho) - se você esquecer de colocá-lo o programa não será compilado. Bibliotecas padrões em C: #include <stdio.h> #include<stdlib.h> 2.2.1 Variáveis Variáveis são espaços de memória reservados que guardam valores durante a execução de um programa. Todas as variáveis em c devem ser declaradas, antes de serem usadas. Uma declaração de variável em C consiste no nome de um tipo, seguido do nome da variável. Quadro de variáveis Código Formato %c Um caractere (char) %d Um número inteiro decimal (int) %ld Um número inteiro decimal longo (long int) %hd Um número inteiro decimal curto (short int) %f Números de ponto flutuante (decimais) de precisão simples (float)
Operadores relacionais Os operadores relacionais do C realizam comparações entre variáveis.
6
Quadro de operadores Operador Ação > Maior que >= Maior ou igual a < Menor que <= Menor ou igual a == Igual a != Diferente de
2.2.2 Printf O printf é uma descrição de tudo que a função vai colocar na tela. A string de controle mostra não apenas os caracteres que devem ser colocados na tela, mas também quais as variáveis e suas respectivas posições. EX.: Printf (“Bom dia\ n”);
2.2.3 Scanf Usando a função Scanf podemos pedir dados ao usuário. Devemos ficar atentos a fim de colocar o mesmo número de argumentos que o de códigos de controle na string de controle. Outra coisa importante é lembrarmos de colocar o & antes das variáveis da lista de argumentos. EX.: Scanf (“%c”, &x);
2.2.4 Estrutura seletiva IF e ELSE Uma ação muito importante que o processador de qualquer computador executa, e que o torna diferente de qualquer outra máquina, é a tomada de decisão definindo o que é verdadeiro e o que é falso.
IF Para usar o IF basta digitar entre parênteses o que deve ser comparado. IF é uma palavra reservada que não aceita ponto-e-vírgula (;) no final. Se for verdadeiro, o programa executará a primeira linha logo abaixo do IF. Se o IF tiver que executar várias linhas, todas as linhas que devem ser enquadradas dentro do bloco de dados - as chaves ({}).
7
ELSE O ELSE só existe se tiver um IF. O ELSE só será executado se o IF for falso. Else executará só a primeira linha abaixo dele. Se o else tiver que executar várias linhas, vale a mesma regra de IF. Todas as linhas a ser executadas deverão estar contidas dentro do bloco de dados ({}). EX. IF e ELSE: # include < stdio.h> # include <stdlib.h> Main() { In n; Printf (“Digite um número\ n”); Scanf (“%d”, &n); If ( n <=5) { Print f(“O número é menor ou igual a cinco\n”); } Else if ( n==0) { Printf (“O número é igual a zero\ n”); } Else ( n>5) { Printf (“O número é maior que cinco\ n”); } Sistem (“PAUSE”); }
2.2.5 Switch, case e default Outra forma de estrutura seletiva é o SWITCH. Dentro do switch há o case (que significa caso). Ou seja, é quase que um IF com várias possibilidades, mas com algumas diferenças importantes. Os case não aceitam operadores lógicos. Portanto, não é possível fazer uma comparação. Isso limita o case a apenas valores definidos. O switch executa seu bloco em cascata. Ou seja, se a variável indicar para o primeiro case e dentro do switch tiver 5 cases, o switch executará todos os outros 4 cases a não ser que utilizemos o comando para sair do switch. (Nos referimos ao BREAK). Primeiro o comando SWITCH e entre parênteses a variável na qual está guardado o valor que será avaliado pelo case. Então, abre-se o bloco de dados. Dentro do bloco de dados colocamos o comando CASE e logo após um valor terminando a linha com dois pontos (:).
Default Default, do inglês padrão, é o case que é ativado caso não tenha achado nenhum case definido. Ou seja, é o que aconteceria em último caso. Seu programa pede
8
para que o usuário digite apenas duas opções (S ou N) para reiniciar o programa. Mas, propositalmente ou por engano, o usuário digita uma opção totalmente diferente. Geralmente o default é quando é previsto um erro, uma entrada de dado incorreta ou não de acordo com o contexto. Ex.: # include <stdio.h> Main() { Float x; Printf (“Digite sua altura\ n”); Scanf (“%f”, &x); Switch (altura) Case ´<=1.50´: Printf (“Baixo\ n”); Case ´<=1.75´: Printf(“Médio\ n”); Case ´<2.20´: Printf (“Alto\ n”); Default; Printf ( Altura Invalida\ n”); }
9
3 REFERENCIAL TEÓRICO “Programadores em C tem o total controle e acesso aos recursos do computador e do sistema operacional, podendo acessar e lidar com áreas do sistema que simplesmente
são
inacessíveis
com
outras
linguagens
de
programação”
(Programação Progressiva.net, acesso em 08 de Jun. de 2013). “Atualmente, a tecnologia é um dos grandes responsáveis pelo consumo dos recursos naturais do planeta Terra. Além da energia consumida durante o processo de produção, entra nesta conta também o desperdício de energia de aparelhos eletrônicos” (Tecmundo, acesso em 08 de Jun. de 2013). “A linguagem C se tornou uma das linguagens de programação mais utilizada, por ser flexível e ainda poderosa, sendo que ela é a responsável pela criação de alguns softwares famosos e a base de outros como jogos” (Devmedia, acesso em 08 jun. 2013).
10
4 TECNOLOGIA VERDE
A sustentabilidade do planeta requer atenção especial de todos.
Atualmente a tecnologia é um dos grandes responsáveis pelo consumo de recursos naturais, além da energia consumida durante o processo de produção, também o desperdício de energia com aparelhos eletrônicos. Chamamos de Tecnologia Verde a utilização mais eficiente de energia, recursos, insumos e produção, até o uso de substância e materiais menos tóxicas, abrangem também recursos tecnológicos que consumam menos energia, que agridam menos o meio ambiente para que minimize o impacto quando descartados e ou permitindo o recicle e até mesmo a sua reutilização. Grandes empresas estão adotando das mais variadas formas para lidar com a sua sustentabilidade, um delas é racionalizar os recursos utilizados pelos sistemas computacionais, como os datacenters que consomem em torno de 1% da energia gerada pelo planeta, agregado a esse número, o ar condicionado para manter a temperatura ideal dos equipamentos. A prática da Tecnologia Verde ou, também não menos conhecida, TI Verde, taticamente falando não modifica a infraestrutura de TI nem as políticas da empresa, apenas incorpora medidas de contenção de gastos elétricos excessivos, como a utilização de lâmpadas fluorescentes, o desligamento de monitores e etc. De forma mais estratégica algumas empresas convocam auditorias sobre a infraestrutura e o seu uso relacionado ao meio ambiente, desenvolvendo e implantando novos meios viáveis de produção ou serviço, como uma nova infraestrutura visando o menor impacto ambiental incluindo novas política e medidas, até o marketing gerado pelas medidas adotadas pela marca também é levado em consideração. De uma forma mais rígida, algumas empresas levam mais a fundo e buscam maximizar o desempenho com o mínimo de impacto causado, por exemplo, a Google que inclui desde locomoção de seus funcionários com veículos híbridos e o consumo de energia alternativa como a solar até o planejamento do datacenters e a Yahoo, mais agressiva, que vai desde construção de datacenters com produtos de acordo com as normas e exigências ambientais, o uso da virtualização de servidores até gestão de consumo elétrico de resfriamentos dos seus equipamentos e ambientes climatizados para a rotina de seus funcionários.
11
Hoje a virtualização de servidores é uma das saídas encontrada para otimizar espaço físico e custos dentro da empresa, permitindo-as colocar diversas aplicações dentro de um único servidor, aumentando a eficiência operacional, reduzindo custos com ativos de infraestrutura, mão-de-obra especializada, licença de softwares, desperdícios com hardware ocioso, em modo geral, uma economia bem considerado para as empresas. Segundo LYNCH, 2009; “A utilização otimizada dos equipamentos físicos fornece a manutenção da ocupação física na empresa somada à expansão do desempenho, reduzindo assim as “pegadas ecológicas” que poderiam ser causadas pela aquisição de novos equipamentos como o aumento do espaço necessário e a energia correspondente para a sua refrigeração. Em termos de descarte de equipamentos, a virtualização auxilia na redução da ambiental ao substituir os equipamentos físicos com máquinas lógicas”.
Grandes empresas vêm investindo pesado na preservação do meio ambiente e também no desenvolvimento de produtos eletrônicos que não sejam tão danosos à natureza tanto enquanto usados, quanto na hora do descarte. Apesar de cerca de 94% dos matérias contido nos eletro eletrônicos, não é exatamente isso que acontece, um bom exemplo disso são as baterias de celulares. Segundo o blog ecoiron.blogspot.com publicou que se a página da Google fosse preta, seriam economizados no mundo todo em um ano, a quantidade suficiente para abastecer uma cidade de cem mil habitantes. O comportamento do usuário doméstico sobre a TI Verde também pode ser praticado em sua casa. A reutilização e reciclagem de equipamentos, o uso de suprimentos e equipamentos com o “selo verde” podem fazer a diferença quanto a preservação do meio ambiente. De fato o que determina as decisões e posturas em relação a preservação do meio ambiente depende de nós, da sociedade e não só das empresas, para trazer os valores éticos e morais e não ficarem somente na reflexão. Tais princípios só alcançarão resultados se a prática for mútua e as atitudes concretas.
12
4 CONCLUSÃO Apesar da lista de características úteis que C possui não ser longa, isso não tem sido um impedimento à sua aceitação. Uma consequência dessa aceitação geral da linguagem C é que frequentemente os compiladores, bibliotecas e até intérpretes de outras linguagens de nível maior sejam eles próprios implementados em C. Linguagem C tem como ponto forte, a sua eficiência, e é a linguagem de programação preferida para o desenvolvimento de sistemas e softwares de base, apesar de também ser usada para desenvolver programas de computador. É também muito usada no ensino de ciência da computação, mesmo não tendo sido projetada para estudantes e apresentando algumas dificuldades no seu uso. Outra característica importante de C, é sua proximidade do código de máquina, que permite que um projetista seja capaz de fazer algumas previsões de como o software irá se comportar, ao ser executado. Linguagem C tem como ponto fraco, a falta de proteção que dá ao programador. Praticamente tudo que se expressa em um programa em C, pode ser executado, como por exemplo, pedir o vigésimo membro de um vetor com apenas dez membros. Os resultados são muitas vezes totalmente inesperados, e os erros, difíceis de encontrar.
13
5 REFERÊNCIAS Disponível <http://www.tiexpert.net/programacao/c/include.php> Acesso: 18/06/13. Disponível <http://www.tiexpert.net/programacao/c/if-else.php> Acesso em:18/06/13. Disponível <http://pt.wikipedia.org/wiki/Ti_verde> Acesso em: 18/06/13. Disponível<http://planetasustentavel.abril.com.br/noticia/atitude/conteudo_246637.sh tml> acesso em: 18/06/13. Disponível<http://www.tecmundo.com.br/1588-tecnologia-verde.htm> Acesso em:18/06/13.