Olá boa tarde boa tarde pessoal meu nome é Valdir sou professor de controladores disciplina do curso de engenharia mecatrônica do Instituto Federal Santa Catarina eu vou passar aqui para vocês rapidamente uma visão uma revisão né de extrema de ser programação C porque nós vamos usar a nossa disciplina é para quem já conhece linguagem de programação que já trabalhou com cê porém e faz algum tempo que não está habituado novamente a mexer com você então eu pretendo aqui fazer uma revisão rápida dos fundamentos de sei e chegando até ponteiro e estruturas será uma aula de meia
hora talvez um pouco menos 20 minutos apenas para que vocês possam lembrar bem e tá bem consciente dessa parte de programação C tô aqui na na lapela vocês podem ver né Nós temos o nosso ambiente de trabalho eu vou usar este compilador C que está disponível na internet no lado esquerdo nós temos o código fonte padrão de ser quando não tem nada ser executado praticamente e na direita nós temos aqui o nosso como resultado do compilador né aposta de rodar quando clicamos no botão verde né nesse caso não tem nenhuma aplicação né então nós podemos
ver isso ah e podemos aprender por meio desse short aqui então vamos começar né Para começar você é uma linguagem que precisa né Assim como várias outras linguagens que se inclua me o técnicas de programação que permitam que ele funcione adequadamente por exemplo é sobre o teku é uma biblioteca padrão todos os meus começa com STD stander na relação os padrões né Que importante o elas devem ser incluídas para podermos algumas funções nesse caso pelo poder usar o print f por exemplo né gente é ficar em morando né é uma comando né de impressão formatada
aqui eu posso imprimir o valor de uma variável né e variável bom e que permite quando rodo aqui ele vai imprimir o valor de uma variável aqui não tem nenhuma variável ainda então vamos criar uma variável né o pentear = 100 e agora eu posso então imprimir né mas sopa imprimir sua variável é o valor dessa variável como que eu vou colocar que eu preciso colocar um qualificador né nesse caso é o inteiro Então tem que colocar a porcentagem de na posição onde eu quero que sim prima em certos seguido da própria variável no caso
o valor a então ele vai imprimir isso para nós que eu abrir um pouco mais fica mais fácil de ver rodando esse programa né o valor de uma variável igual a sem obviamente eu não posso podar 100.0 no caso né se você colocar ele não vai dar rolo mas ele não ele vai ignorar né que tá depois da Vivo ou da vai dar um erro né Para dar um ordem aqui né qualquer maneira eu estou trabalhando com um vai aqui e um pouco aqui a tela para não ficar tão pequeno né acho que tá ficando
demais a um ok aqui imagens pode ver temos variados locais mas são variáveis locais só vale aqui dentro né e variáveis globais Vamos criar algumas variáveis que são bem comuns né em programação inteiros e assim por diante forte não quer uma colher foi hoje chamada pe ou por exemplo né pi = 3.14 né 16 O que é uma variável flores e neste caso assumiu esse valor né que ela tem mais sentido podia ser uma constante mas por enquanto não trabalhar nesse jeito só para vocês ficarem entendendo melhor né né a E então agora a gente
eu posso usar essa variável pequeno grave Global permite eu posso usar lá tanto dentro do Meio encontrem dentro de Outras funções que uma função void teste é uma função o que não tenho quase nada mas como é a variável Global eu posso imprimir aqui né nessa variável PE né então que vale como um forte né porcentagem f e vale o valor de certo neste caso aqui a botão codificador de quebra de linha né para não ficar e aqui também né para não ficar tão ruim então quando eu eu Hobbit sistema né que ele vai Então
me dá o valor na direita certo valor de uma variável é esse e quando eu chamar a função teste aqui né simplesmente tô chamando a função teste e também vai imprimir e valor de Pi certo tão rapidamente é isso mas eu poderia passar aqui se eu quisesse que a variável que fosse impressa força variável não Global nep ou uma variável local tipo ar né então vamos chamar aqui em tics e eu vou imprimir o valor de x nesse caso o inteiro né e o de tanto faz e aí o que eu vou passar aqui para
ele é o valor de ar então o ar que assim trabalhava inteira que tá aqui na esquerda né que será chamada nessa é enviada né pra função teste aí uma me copiando o valor de ar para pagar raio-x e agora eu posso imprimir a variável x que no caso ali sem né então eu tenho aqui ó fiz ali sem Claro que não vale sem né mas é próximo disso aí bom então com isso eu consigo né é o criar variáveis locais que a funções funções receber parâmetros e eu posso também retornar um parâmetro da função
por exemplo aqui um tipo de Shar né retorna um chá que é um ok né eterno primeiro um Então se aqui eu posso testar agora ache a função teste e torna um lá em cima não precisa eu posso imprimir Aqui tudo OK tudo então eu tenho agora uma eu tô testando né Estou mandando escutar essa função teste que basicamente imprimir o valor de ar né uma tá aqui agora certo né a vale tanto esse ela retornar um eu vou imprimir isso aqui também então nós temos que ter agora é nós temos que agora aqui na
direita né mas coisas vamos lá então vai imprimir valor de uma variável sem peixe aqui depois a valessem que é o que está dentro da função teste certo e Tudo ok e é o fato de que ele retornou o valor um que é positivo que no caso positivo mark0 né então importante teste aqui deu com o verdadeiro e portanto imprimir tudo ok se acha que fosse qualquer valor é fosse zero não apareceriam tudo ok aqui na direita Como foi o caso né então nós temos aí rapidamente que acham de variáveis que vários tipos né funções
não lembrando funções que você pode ter funções que você copia um parâmetro ou Retornam para mico né pode ser se fora um parâmetro é o padrão né se pode ter mais paramos de de retorno claro ok E então olhando um pouco mais né O nosso pequeno teste aqui ó e nós podemos então é a trabalhar com outra variável bem comum são as matrizes né Mas vamos lá vamos criar uma matriz qualquer aqui fechar né Matriz deixar com alguns elementos então nós podemos criar sua matriz aqui por exemplo com a letra a a letra b a
e eu também na letra você por exemplo um b e assim podia né Então temos algumas alguns paramos aqui nesse caso a matriz de poucos elementos né quatro elementos da uma triste né se você rodar aqui mas tá tudo ok nós temos uma matriz não precisa de dizer para você né que tamanho essa é uma vez porque ele na hora de compilar e ver que tem que colocar aqui um valor constante né mas se você não colocar aumente quiser colocar né são quatro OK E aí essa Matriz pode ser usada por uma variável Global eu
posso usar aqui né em qualquer lugar no meu programa e vamos imprimir né a gente f E no caso de Matriz é um pouco mais tiver um pouco diferente mas eu posso imprimir elemento elemento da minha Matriz né E aí vamos fazer um laço para mim para lembrar de Laços né posso four mas nós temos um indico sakineh index O que começa geralmente 10 para e termina E no caso aqui em em em quatro né são laço do meu máximo que temos de componentes na matriz e que implementa de um que então não fazer um
laço four para essa variável aqui é uma vagar intime-se a identi nós vamos imprimir cada uma das princesas gêmeas nome da minha marca isso né então eu posso imprimir aqui elemento o momento casa de chia Matriz né Marques metrix Vamos colocar aqui o próprio esse né Vamos fazendo o meu meu a minha variável que eu quero te mostre e ela vale aqui então o meu né então e Aqui nós temos a matriz 1 Oi eu voltei com x ou com a com z né Mateus Se né a matriz in this index então nós conseguimos imprimir
todos os elementos um do lado do outro obviamente né bom então vamos botar isso aqui embaixo do outro é a forma de trabalhar com Matriz Matriz é como se fosse no em índices né nesse caso aqui já deu algum erro print fp-7f aqui né eu tenho Achei cara desse jeito a mais beleza então rodando aqui o nosso pequeno programa né Nós podemos então e tirar mentira da frente né e aqui de algum erro porcentagem eles porcentagem caractere né você não está acender obviamente que deu errado né indexes, e depois as Olimpo me o valor da
Matriz então Aqui nós temos numa elemento 0 a no elemento Uber pimento dois você no3oh de é simples né E aí conseguimos então trabalhar um pouco mais rapidamente nessa questão dos Índios AL E aí o que a gente ó é tão laços for lá se repetição bem comuns né no Wii U é esse são bastante usuais em ser não é a gente vai falar aqui hoje matrizes para sentir comum também né para funções da mesma maneira e temos que agora trabalhar de uma forma um pouquinho diferente e mostrando que tudo isso pode ser feito né
um ponteiro certo na no caso Aqui nós temos uma matriz na frente criar ponteiros para a contar para coisa né então vamos achar* um ponteiro finalmente começamos com a palavra Pointer né Point para alguma coisa no caso eu quero ponto para passar uma crise aí né e nós não momento de filmes lá como inicializamos anates cúmulo perto tão temos o nosso ponteira para matriz e agora nós vamos imprimir a mesma rir né Vamos lá sem retorno imprimir numa triste usando ponteiros e e vamos longo certo ó e aqui vou deixar a mesma se forma só
depois que a gente tem que mudar isso e claramente né então eu quero agora imprimir aquela mesma Matriz em vez de imprimir usando uma matriz usando pela própria natureza vamos apontar agora para cada um desses elementos aqui mandar imprimir então para isso nós temos que definir um ponteiro né que vai receber o índice da Matriz vamos deixar definimos aqui né conselho fôrma triste eu podia vir aqui mas eu no caso eu vou deixar isso em branco como o seu organismo baixo aqui nós vamos apontar para esse traçar uma ficha Em algum momento né provavelmente aqui
vamos apontar ontem forma atriz recebe né o matei o endereço de Matriz certo é por padrão né definimos a gente tem que contar para um para um endereço né da Matriz que é o endereço 0 Será que o padrão de endereço endereço 10 de da Matriz pois apontar para qualquer outro ponto né então agora nós temos um ponteiro que aponta para essa Matrix aqui colocar este no início até porque como uma definição que não implica nada aqui nela não tem influência neste Man e eu te influência o fim de mais um pouquinho para ganhar espaço
na na na a parte influência aqui no como que eu vou fazer para imprimir usando ponteiros né Eu já apontei aqui eu já defini que o ponteiro na ele aponta para essa Matriz que tem que ser do mesmo tipo né Observe é fechar então aqui também achar né esse ponteiro ele aponta para para isso aqui definir a povoar a Esse asterisco na frente do nome da variável indica que um ponteiro e portanto eu posso apontar tranquilamente para essa Matriz como vamos imprimir né E aí pode ser um lá eu aqui né um ayu um do
alho four posso Talvez o mundo né e do raio e enquanto o nosso indício o índice aqui é muito legal eles não adianta né e por menor que quatro então provavelmente nós vamos aqui terço possibilidade de imprimir aqui dentro então agora aqui tá vamos imprimir né print F E aí de novo né Vamos usar o mesmo esquema do nome aqui na matriz de tudo vai ficar parecido só que o amiguinho não vai mais usar o que acho aqui colar aqui né e vamos mais usar e aqui continua sendo o endereço que a gente vai também
tem que criar aqui não é uma variável Global né não tinha Hilux igual a zero só que no lugar da Matriz aqui nosso colocar o o nosso ponteiro ponteiro para matriz não colocamos aqui o ponteiro para uma atriz então sabemos agora que eu vou eu vou a ponta e vai imprimir o que está aqui né apontado por esse ponteiro vai fazer isso enquanto o índice for menor que 4 o índio começa a com 10 então eu vou incrementar o índice né a cada interação e vou implementar também eu perguntei ele né Eu não te perguntei
isso o poder pegar o próximo né poder próximo ponto de um bom mas tá tudo certo aqui pronto ele para matriz e aqui né ponteiro para matriz 1 eu não quero matrizes implementa que o ponteiro tinha implementável né começou a ser um contador não permitiu aqui né e não faça isso como nós vamos rodar cês imprimir aqui usando ponteiros até agora não só tem só é colocando no meio e depois nosso peste aqui nós vamos colocar aqui né eu limpei e Mateus 16 muito bem não tô passando em um pagamento por quê Porque de novo
Neve esperamos são globais ponteira Global né então não há nenhuma necessidade de ser diferente então eu vou para ficar fácil né eu vou comentar isso aqui né fixe essas linhas eu vou comentar simplesmente a comment Oi Aline comente pronto então nós temos comentando vai rodar simplesmente esse essa função aqui que é basicamente que vê matriz e assim por diante né e o que aconteceu aqui perto a e aqui deu um erro no formato e Claro porque eu tenho que ir pegar o valor né Então aqui tem que indicar o valor do ponteiro certo tá aí
prontos A B C e D Faltou desreferenciar um ponteiro maior muito rápida né gente então me perdoem pelos erros aí rapidamente então vimos aí contei os uma atrizes na tudo de uma maneira muito muito prática e muito rápida sem se preocupar muito né com detalhes aí né é muito bem o que mais falta ver né para poder finalizar essa disciplina para poder fazer essas para finalizar esse tema aqui de uma revisão rápida isso aí né a falta ver um pouco de estrutura né então vou pegar aqui uma estrutura né vai Pinterest I trust Oi e
aí podemos criar uma estrutura por exemplo não tenho nome né acho que eles com o nome Esse é um ponteiro que aponta para nomes certo e exemplo Charter School pessoa a nome nome e não pegar aqui qualidade né idade novidade basta sair por enquanto de não está tão preocupado com e o que são estruturas e lembrando estruturas é quem são me dá o nome deixo aqui né dados isso aqui são são composição é de dois dos dados né que são contínuos antigos né na memória e são muito bons é tipo de dados do usuário é
a base da na verdade é a base da classe né talvez viriam a ser mais mais e eu posso agora através deste dessa estrutura dados né acessar tanto criar né uma estrutura de nomes ou não E aí normalmente nós fazemos ah ah ah em alguma coisa nesse sentido né os resultados dos pontos e 1 e vamos criar uma estrutura de dados banco e ginásios de banco de dados pode ter uma pessoa com uma idade não faz muito sentido então um botar 10 pessoas estão se uma matriz aí né disso todas as não conheço nós podemos
criar rapidamente um banco de dados cada um desses elementos aqui é uma matriz né tem nome e idade certo e podemos Popular né esse banco de dados em algum momento aqui talvez a função aqui seja Voyage Popular Popular banco é de dados a pular é popular é preencher né como é uma variável global de novo né leve locais é um pouco diferente né então eu posso simplesmente preencher né meu banco de dados aqui com por exemplo nome do banco de dados zero né. Nome é igual onde é em certos o e banco de dados o
Cruzeiro neta minha idade né então nós ficamos brutalidade aqui do Valdir há 55 anos eu não tô enchemos isso aí claro que nós preencher tudo com laço fora variando isso aqui como índice né gente e preencher vários vários deles né pois também Popular eles como se fossem matrizes né É É O discípulo vamos imprimir também né pode imprimir Banco Finasa Sá a mesma coisa nas penas vai imprimir só tá preenchido esse né então vamos imprimir esse direto né aqui vamos lá na frente acha os penteados vamos imprimir o nome nome nome nome igual a mão
aqui um ponteiro né gente então eu vou botar é uma stringhi que aponta para ponteiro nome então nós vamos botar o nome do Valdir e aqui então é o nosso banco banco de dados o banco de dados zero né que é o nosso nome quem sabe. Non certo E aí vamos temos o nosso nome para imprimir e temos também como imprimir pa dados né nome Valdir idade o da Gi o descaso aqui não é um é um caracter não é um é uma variados e né E aqui agora a idade que nós queremos imprimir é
que tem uns primos popular e imprimir o banco de dados aqui no meio né Popular popular quem é e o daqui uma só vai ficar mais fácil Popular banco eu queria me ajudar colocando os nomes prontos não vai né e ficou aqui eu tô vendo Popular banco de dados e depois que nós pulamos a gente pode agora imprimir um é entendida quantidades é claro que aqui é um banco de dados bem de um elemento só né Não precisava usar uma atriz mas eu queria mostrar para vocês que eu posso criar banco de dados de vários
né elemento certo tá bom Aqui parecendo dois erros normalmente a gente está digitando rápido aqui né alguma coisa Sempre erra né É e aqui o nome tá certo no print F banco de dados tá o nome é banco paro né outro veículo Vamos ver se agora tá tudo certo aí tudo certo né nome Valdir idade tatu na frente de vocês né vou tá aqui nele nome Valdir a idade o set porque é porque tá errado né botei 55 mas deixa me lembrar aqui é um charme né bom então aqui eu não é líder é de
porque obviamente Chay vai botar letra equivalente a 55 né então Valdir 55 anos de idade Ok gente então é um Ah pois foi o objetivo da de maneira muito rápida muito prática a gente queria simplesmente passar em uma era extremamente rápida vários conceitos de programação se o resto vai ser por você tem que aprender mais e esse desenvolver mais em cima disso lembrando da programação que você já aprender obrigado valeu gente bom trabalho Bons estudos