CURSO BÁSICO DE PROGRAMAÇÃO AULA 8 Introdução ao Linux Introdução a linguagem C
Linux Linux é um termo utilizado para se referir a sistemas operacionais que utilizem o núcleo Linux. Existem muitas distribuições Linux disponiveis, algumas são: Ubuntu, Fedora, Mint, Debian, dentre outros. Cada uma das distribuições tem suas particularidades, mas não há diferença em como se programa em cada uma delas.
Ubuntu Uma das distribuições mais populares do Linux. Baseada na distribuição Debian, Ubuntu se utiliza de vários recursos da sua distribuição mãe, como também possui suas próprias características. Um de seus focos principais é a usabilidade, e oferta uma gama de recursos completa a partir de uma instalação padrão. O nome "Ubuntu" vem do conceito sul africano de mesmo nome, diretamente traduzido como "humanidade com os outros" ou "sou o que sou pelo que nós somos".
Máquina Virtual Uma máquina virtual é um software que simula um computador real, onde é possível instalar diversos sistemas operacionais hóspedes, para que sejam executados dentro de um sistema hospedeiro. Os softwares de maquina virtual mais conhecidos são: Vmware Player (Código fechado, porem gratuito) Vmware Workstation (Código fechado e págo) Virtual Box (Código livre e gratuito)
Exemplos em execução Vmware Player executando o sistema hóspede Ubuntu, sobre o sistema hospedeiro Windows
Utilizando a máquina virtual De agora em diante, usaremos a linguagem de programação C, cujo as distribuições Linux possuem suporte nativo e a instalação de um compilador no sistema Windows é um tanto trabalhosa. Neste link: http://www.inf.unioeste.br/~dhpagani/ubuntu12.04lts.rar, poderá ser feito download de um arquivo compactado contendo o programa de instalação do Vmware Player, como também o arquivo do HD virtual onde está instalado o Ubuntu. Os professores também terão os arquivos em mãos para serem copiados por pendrive, caso um aluno solicitar.
Utilizando a máquina virtual Assim que instalar o Vmware Player, deverá ser aberta no programa o HD virtual contendo o sistema Ubuntu. Para tal clique em Open vitual machine, como mostra a figura abaixo:
Utilizando a máquina virtual Selecione o arquivo Ubuntu 12.04 LTS.vmx localizado na pasta Ubunto 12.04 TLS extraída do arquivo baixado.
Utilizando a máquina virtual Quando o sistema estiver carregado, selecione-o e clique em Play Virtual Machine
Utilizando a máquina virtual O sistema hóspede possui senha 123 e o nome de usuário é curso-basico Para interagir com o sistema virtualizado, basta clicar sobre a maquina virtual, e para interagir novamente com o sistema hospedeiro, pressione ctrl+alt. Quando fechar a maquina virtual, será mostrado 3 opções: Suspend irá suspender a máquina e seu estado será mantido, para que a maquina inicie onde estava da ultima vez que foi usada. Power off irá efetivamente desligar o sistema virtualizado, necessitando de ser reiniciado em sua próxima execução. Cancel irá, como o nome implica, cancelar a ação.
Introdução ao Ubuntu/Linux É normal pensar que distribuições Linux operam a base de comandos de texto, no entanto, muitas destas distribuições possuem interfaces gráficas onde o usuário pode nunca necessitar de usar a linha de comando. Mas é necessário que um programador tenha conhecimento de alguns comandos básicos da linha de comando.
O Terminal O Terminal é o interpretador de linha de comando padrão da distribuição Ubuntu. Ele pode ser acessado facilmente pelo atalho ctrl+alt+t.
O Terminal Comandos básicos O terminal sempre irá mostrar o diretório presente, mas não os arquivos contidos nele. Para que isso seja feito, o comando ls deve ser digitado.
O Terminal Comandos básicos Para entrar em uma pasta, o comando será cd nome_da_pasta. Também é possível dizer o diretório completo, como mostra a figura abaixo. Para retornar para o diretório anterior, o comando será cd - -, caso seja digitado somente cd o terminal irá para a pasta do usuário.
O Terminal Comandos básicos No terminal, ls irá exibir um arquivo qualquer na cor branca. Em cor azul, será uma pasta, e em verde, um arquivo executável. Para executar um arquivo executável, o comando será./nome_do_arquivo, como mostra na imagem abaixo. Como com cd, é possivel executar programas dizendo seu diretório completo. Ex /home/cursobasico/documentos/main
O Terminal Comandos básicos Comando Para que serve Como se usa rm Remove um arquivo rm nome_arquivo mkdir Cria uma pasta mkdir nome_pasta rm -r mv Remove uma pasta e seu conteúdo Move um arquivo de uma pasta a outra Para mais comandos, visite: http://www.infowester.com/comandoslinux.php http://wiki.ubuntu-br.org/comandosbasicos rm r nome_pasta mv fonte destino
Compilando um código em C Para compilar um código em C, deverá ser usado o comando gcc arquivo.c o arquivofinal. Diferente de VisualG, códigos em C devem ser compilados, para só então, executar o programa.
Introdução à Linguagem C Linguagem compilada. Desenvolvida sobre os paradigmas de programação procedural. Uma das linguagens de programação mais populares. Como visto em: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.ht ml Quase todas as arquiteturas de processadores possuem um compilador para C. Uma das melhores opções para soluções que requerem alto desempenho computacional porém dispensam interface gráfica.
Criadores da Linguagem C
Comparativo entre VisualG e C
Declaração de Variáveis VisualG C <nome>: <tipo> <tipo> <nome>;
Declaração de Variáveis A linguagem C possui mais tipos de variáveis que Portugol, como ponteiros e também structs. VisualG não é case sensitive, ou seja: meuinteiro1 = meuinteiro1 = MEUINTEIRO1 C é case sensitive, ou seja: meuinteiro1 <> meuinteiro1 <> MEUINTEIRO1 Regra se aplica a palavras reservadas como for, while, if e else.
Tipos Básicos de Dados
Entrada e Saída VisualG C leia(<var1>, <var2>) escreva( texto, <var1>) escreval( texto, <var1>) scanf( formato, <endereços>); printf( formato, <variaveis>);
Códigos de Formatação
Comandos de Atribuição
Operadores Aritméticos Operadores de Incremento: ++ e --
Exemplo Incrementos
Operadores Relacionais
Operadores Lógicos
Atribuições Abreviadas em C Compacta a codificação Utilizada para incrementos/decrementos não unitários Exemplo: x += 2; // equivale a x = x + 2; x -= 2; // equivale a x = x 2; x /= var1; // equivale a x = x/var1; x *= x; ;; equivale a x = x * x;
Exemplo Leia dois números e imprima o produto entre eles
Exercícios 1. Leia um nome de no máximo 50 caracteres e imprima a mensagem Bem vindo, <nome>, sendo <nome> a variável lida. 2. Leia 3 caracteres e imprima-os em sequência. Em seguida, os imprima em ordem inversa. 3. Leia o valor total de uma compra e o número de parcelas. Calcule então o valor de cada parcela, considerando 2% de juros simples ao mês.
Exercícios 4. Leia um número inteiro e calcule a soma de seus dígitos. Considere que o número lido tem sempre 4 dígitos. 5. Calcule o valor do metro quadrado de determinado imóvel. Seu algoritmo deve ler o custo total do imóvel e a medida dos dois lados de seu terreno.
Exercícios 6. João desenvolveu um sistema de codificação que segue o padrão abaixo: Número Lido Número Codificado 12345 666 24601 3124 30107 1020 71713 10142 Faça um algoritmo que leia um número de cinco dígitos e imprima o número codificado.
FIM Dúvidas? Thales, Gustavo, Marcelo e Mateus thalesbertaglia@gmail.com, ghpaetzold@outlook.com, marcelofudo@outlook.com,