Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Algoritmos e Técnicas de Programação Prática 02 – Aplicações com Vetores Aplicação de Vetores em C � Vetor é uma matriz 1D (unidimensional ou linear) � Matriz é uma estrutura de dados homogênea: � arranjo sequencial de variáveis do mesmo tipo, referenciadas por: � um nome identificador matriz; e � um índice ou posição dentro da estrutura: int Vet[2]; //v: vetor de até 2 inteiros Vet[0] = 25; //atribui 25 ao 1º elemento Vet[1] = Vet[0]+7; //atribui 32 ao 2º elem. Matrizes 1D - Vetor � Uma matriz pode ser: � Unidimensional (1D): Vetor (vetor algébrico) � Exemplo: vetor “V” com 6 elementos: 1x6 � O nome do vetor é uma referência (ponteiro) para o 1º byte da estrutura! V[0] V[1] V[2] V[3] V[4] V[5] V Exercício 1 – Armazenamento em Vetor � Implemente um programa que leia até cinco (5) inteiros não negativos do teclado, finalizando a leitura com a digitação de um inteiro negativo, que não deve fazer parte dos dados. � O programa deve listar o números digitados: a seqüência de números 12 08 15 -1, o programa deve exibir algo como: � Os 3 números digitados foram: 12 08 15 Solução 1: #include <stdio.h> #include <stdlib.h> void main() { int v[5]; int i, x=0, n=0; while (x >=0 && n < 5){ printf("Digite o elemento v[%d]: ", n); scanf("%d", &x); if (x >=0) v[n++] = x; //armazena x e incrementa n; } printf("Os numeros digitados foram: "); for (i=0; i<n; i++) printf("%d ", v[i]); printf("\n\n"); system("pause"); } Exercício 2 – Estatística Básica � Modifique o programa anterior para processar a mesma entrada de dados e fornecer como saída as seguintes estatísticas: � Max: valor mínimo � Min: valor máximo � Med: A média aritmética dos valores � Dp: O desvio padrão dos valores, como tarefa pós- aula (pesquisar a fórmula). 2 Exercício 3: Uso de Strings (Vetor de Caracteres) � Em C, uma string (cadeia de caracteres) é representada por meio de um vetor de caracteres. � Se n é o número de caracteres da string, então a posição n será sempre ocupada pelo caracter ‘\0’ (lê-se “caracter nulo” ou simplesmente “barra-zero”). � Exemplo: � char s[8] = “Lapis” � As funções para manipular strings requerem a inclusão da biblioteca <string.h>. L a p i s \0 0 1 2 3 4 5 6 7 Exercício 3: Uso de Strings (Vetor de Caracteres) � Considere o programa abaixo que lê uma string via teclado e informa o seu comprimento. #include <stdio.h> #include <stdlib.h> #include <string.h> void main(){ char s[30]; int n; printf("Digite uma string: "); scanf("%s", s); n = strlen(s); printf("\nA string %s tem %d caracteres\n\n", s, n); system("pause"); printf("\n\n"); } Exercício 3: Uso de Strings (Vetor de Caracteres)- Continuação... � Com base neste protótipo de programa, implemente: � uma função para inverter a ordem dos caracteres de uma string passada como parâmetro: aula ⇒ alua; sexta ⇒ atxes etc. � uma função para checar (V/F) se a string passada como parâmetro é palíndromo, isto é, se a sequencia de caracteres é a mesma nos dois sentidos. Exemplos: osso, radar, arara etc. � Incorpore as funções dentro do programa, ou seja, implemente as chamadas para a mesma, com uma interface que permita a escolha de qual função deve ser executada. NOTA: Um palíndromo contendo apenas algarismos arábicos (0, 1, 2...) é também chamado de capicuia.
Compartilhar