Você está aqui: C ::: Dicas & Truques ::: Ordenação e Pesquisa (Busca) |
C para iniciantes - Como ordenar os elementos de um vetor de inteiros usando a ordenação da bolha (Bubble Sort) na linguagem CQuantidade de visualizações: 9620 vezes |
O método ou algorítmo de ordenação da bolha é uma das técnicas mais simples de ordenação. No entanto, este método não é eficiente, visto que o tempo despendido para sua execução é muito elevado se comparado à outros métodos existentes. Geralmente usamos este método quando queremos ordenar 50 elementos ou menos. O entendimento deste método é fácil. Se estivermos ordenandos os valores do menor para o maior, o método da bolha percorre os elementos do vetor (array), comparando e movendo o menor valor para a primeira posição do vetor, tal qual bolhas indo para a superfície. Veja um exemplo completo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> void bubble_sort(int matriz[], int tam){ int temp, i, j; for(i = 0; i < tam; i++){ for(j = 0; j < tam; j++){ if(matriz[i] < matriz[j]){ temp = matriz[i]; matriz[i] = matriz[j]; matriz[j] = temp; } } } } int main(int argc, char *argv[]) { int valores[] = {4, 6, 2, 8, 1, 9, 3, 0, 11}; int i, tamanho = 9; // imprime a matriz sem a ordenação for(i = 0; i < 9; i++){ printf("%d ", valores[i]); } // vamos ordenar a matriz bubble_sort(valores, tamanho); // imprime a matriz ordenada puts("\n"); for(i = 0; i < 9; i++){ printf("%d ", valores[i]); } puts("\n"); system("pause"); return 0; } Ao executar este código nós teremos o seguinte resultado: Sem ordenação: 4, 6, 2, 8, 1, 9, 3, 0, 11 Ordenados: 0, 1, 2, 3, 4, 6, 8, 9, 11 |
![]() |
C ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como passar um vetor para uma função CQuantidade de visualizações: 12119 vezes |
Muitas vezes precisamos passar um vetor, ou seja, um array unidimensional para uma função na linguagem C. O trecho de código abaixo mostra como isso é feito. Observe que a passagem de um vetor para uma função é feita por referência, ou seja, qualquer alteração nos valores do array dentro da função será refletida no vetor original: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <locale.h> // protótipo da função que recebe o array e exibe os seus elementos void exibir_vetor(int vetor[], int tamanho); // função principal do programa int main(int argc, char *argv[]){ // cria um vetor com 5 inteiros int valores[] = {54, 3, 89, 6, 1}; setlocale(LC_ALL,""); // para acentos do português // passa o vetor para a função exibir_vetor() // veja que temos que enviar também a quantidade // de elementos exibir_vetor(valores, 5); printf("\n\n"); system("PAUSE"); return 0; } // função que recebe o array e exibe os seus elementos void exibir_vetor(int vetor[], int tamanho){ int i; printf("Os elementos do vetor são:\n\n"); for(i = 0; i < tamanho; i++){ printf("%d ", vetor[i]); } } Ao executar este código C nós teremos o seguinte resultado: Os elementos do vetor são: 54 3 89 6 1 |
C ::: Fundamentos da Linguagem ::: Métodos, Procedimentos e Funções |
Apostila C para iniciantes - Como escrever suas próprias funções em CQuantidade de visualizações: 10840 vezes |
As funções na linguagem C têm por objetivo dividir nossos programas em partes menores. Em vez de colocar todo o nosso código na função main() nós podemos criar nossas próprias funções e, desta forma, agrupar funcionalidades relacionadas. Suponha que estejamos desenvolvendo um editor de texto em C. Poderíamos então ter funções que abrem o arquivo a ser exibido no editor, que salvam o arquivo, que verificam se houve alterações no texto, etc. E a maior vantagem disso é que conseguimos promover o reaproveitamento de código, uma vez que, diferente da função main(), as funções disponíveis na linguagem e aquelas que nós mesmos criamos podem ser chamadas mais de uma vez durante a execução do programa. Então, já sabemos que uma função não é nada mais que um bloco de códigos situado fora da função main() e que pode ser chamado a partir da função main() ou de outras funções no programa. Sendo assim, vamos escrever nossa primeira função em C. Veja o código a seguir: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> // uma função que escreve uma frase // na tela void escrever(void){ printf("Sou uma funcao"); } int main(int argc, char *argv[]){ // efetua uma chamada à função escrever escrever(); puts("\n\n"); system("PAUSE"); return 0; } Neste programa nós temos uma função chamada escrever() que apenas escreve uma frase na tela. Note o uso de void para indicar que a função não retorna nada e não aceita nenhum argumento. Alguns compiladores (tais como Dev-C++) não exigem que coloquemos void para indicar a ausência de parâmetros na função. Assim, a função acima pode ser reescrita da seguinte forma: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- void escrever(){ printf("Sou uma funcao"); } Importante notar que, dentro do corpo de uma função, podemos inserir a quantidade de código que desejarmos. Isso é importante, uma vez que a tarefa realizada por uma função pode não ser tão simples quanto o exemplo que usamos até este ponto. Veja um programa que contém uma função personalizada mais elaborada. Note as duas chamadas a esta função a partir da função main(): ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> // uma função que escreve uma frase // na tela void escrever(){ char nome[] = "Osmar J. Silva"; printf("Ola, meu nome e %s\n", nome); } int main(int argc, char *argv[]){ printf("Sou main. Vou chamar a funcao escrever()\n"); // efetua uma chamada à função escrever escrever(); // efetua outra chamada à função escrever escrever(); printf("Acabei de efetuar chamadas a funcao escrever()"); puts("\n\n"); system("PAUSE"); return 0; } Funções podem receber argumentos e retornar valores. E quando isso acontece nós estamos realmente escrevendo funções úteis. Quando perceber que já aprendeu a escrever funções simples como as demonstradas nesta dica, volte sua atenção para as funções mais elaboradas que tratamos em outras dicas relacionadas. |
C ::: Dicas & Truques ::: Strings e Caracteres |
Como verificar se uma string é igual, maior ou menor que outra em C usando a função strcmp()Quantidade de visualizações: 22512 vezes |
A função strcmp() da linguagem C pode ser usada para verificar se uma string é igual, maior ou menor que outra. Esta função, presente no header string.h aceita duas strings e retorna um valor inteiro: 0 se as strings forem iguais; maior que 0 se a primeira string for maior que a segunda e menor que 0 se a primeira string for menor que a segunda. Veja um exemplo de seu uso: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <string.h> int main(int argc, char *argv[]){ char palavra1[] = "Java"; char palavra2[] = "JavaScript"; if(strcmp(palavra1, palavra2) == 0){ printf("As palavras sao iguais"); } else if(strcmp(palavra1, palavra2) > 0){ printf("A primeira string e maior que a segunda"); } else if(strcmp(palavra1, palavra2) < 0){ printf("A segunda string e maior que a primeira"); } puts("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: A segunda string é maior que a primeira. |
C ::: Dicas & Truques ::: Arquivos e Diretórios |
Como testar se um arquivo existe usando a linguagem CQuantidade de visualizações: 14225 vezes |
Muitas vezes precisamos saber se um determinado arquivo existe antes de efetuarmos alguma operação. O trecho de código abaixo mostra como você pode implementar uma função file_exists() em C que pode ser usada em seus programas. O segredo aqui é tentar abrir o arquivo passado como argumento para a função. Se o arquivo for aberto com sucesso, sabemos que ele existe e a função retorna o valor 1 (true), do contrário retorna 0 (false):---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> /* Implementação de uma função file_exists() em C. Se o arquivo existir o valor 1 (true) será retornado. Caso contrário a função retornará 0 (false). */ int file_exists(const char *filename) { FILE *arquivo; if(arquivo = fopen(filename, "r")) { fclose(arquivo); return 1; } return 0; } int main(int argc, char *argv[]) { // testa se o arquivo existe if(file_exists("c:\\testes.txt")){ printf("O arquivo existe no local especificado.\n"); } else printf("O arquivo NAO existe no local especificado.\n"); printf("\n\n"); system("PAUSE"); return 0; } |
C ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o cateto adjascente dadas as medidas da hipotenusa e do cateto oposto em CQuantidade de visualizações: 2319 vezes |
Nesta dica mostrarei como podemos tirar proveito do Teorema de Pitágoras para obter a medida do cateto adjascente quando temos as medidas da hipotenusa e do cateto oposto. Este teorema diz que "o quadrado da hipotenusa é igual à soma dos quadrados dos catetos", o que torna a nossa tarefa, na linguagem C, muito fácil. Comece observando a imagem a seguir: ![]() Veja que, nessa imagem, eu já coloquei os comprimentos da hipotenusa, do cateto oposto e do cateto adjascente. Para facilitar a conferência dos cálculos, eu coloquei também os ângulos theta (que alguns livros chamam de alfa) e beta já devidamente calculados. A medida da hipotenusa é, sem arredondamentos, 36.056 metros. Então, sabendo que o quadrado da hipotenusa é igual à soma dos quadrados dos catetos (Teorema de Pitógoras): \[c^2 = a^2 + b^2\] Tudo que temos que fazer é mudar a fórmula para: \[b^2 = c^2 - a^2\] Veja que agora o quadrado do cateto adjascente é igual ao quadrado da hipotenusa menos o quadrado do cateto oposto. Não se esqueça de que a hipotenusa é o maior lado do triângulo retângulo. Veja agora como esse cálculo é feito em linguagem C: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <math.h> int main(int argc, char *argv[]){ float c = 36.056; // medida da hipotenusa float a = 20; // medida do cateto oposto // agora vamos calcular a medida da cateto adjascente float b = sqrt(pow(c, 2) - pow(a, 2)); // e mostramos o resultado printf("A medida do cateto adjascente é: %f", b); printf("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: A medida do cateto adjascente é: 30.000586 Como podemos ver, o resultado retornado com o código C confere com os valores da imagem apresentada. |
C ::: C para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como somar os elementos da diagonal principal de uma matriz em CQuantidade de visualizações: 4637 vezes |
A Matriz quadrada é um tipo especial de matriz que possui o mesmo número de linhas e o mesmo número de colunas, ou seja, dada uma matriz Anxm, ela será uma matriz quadrada se, e somente se, n = m, onde n é o número de linhas e m é o número de colunas. Em geral as matrizes quadradas são chamadas de Matrizes de Ordem n, onde n é o número de linhas e colunas. Dessa forma, uma matriz de ordem 4 é uma matriz que possui 4 linhas e quatro colunas. Toda matriz quadrada possui duas diagonais, e elas são muito exploradas tanto na matemática quanto na construção de algorítmos. Essas duas diagonais são chamadas de Diagonal Principal e Diagonal Secundária. A diagonal principal de uma matriz quadrada une o seu canto superior esquerdo ao canto inferior direito. Veja: ![]() Nesta dica veremos como calcular a soma dos valores dos elementos da diagonal principal de uma matriz usando C. Para isso, só precisamos manter em mente que a diagonal principal de uma matriz A é a coleção das entradas Aij em que i é igual a j. Assim, tudo que temos a fazer é converter essa regra para código C. Veja um trecho de código C completo no qual pedimos para o usuário informar os elementos da matriz e em seguida mostramos a soma dos elementos da diagonal superior: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]){ // vamos declarar e construir uma matriz de três linhas // e três colunas int linhas = 3, colunas = 3; int matriz[linhas][colunas]; // guarda a soma dos elementos na diagonal principal int soma_diagonal = 0; int i, j; // vamos ler os valores para os elementos da matriz for(i = 0; i < linhas; i++){ // linhas for(j = 0; j < colunas; j++){ // colunas printf("Informe o valor para a linha %d e coluna %d: " , i, j); scanf("%d", &matriz[i][j]); } } // vamos mostrar a matriz da forma que ela // foi informada printf("\n"); // percorre as linhas for(i = 0; i < linhas; i++){ // percorre as colunas for(j = 0; j < colunas; j++){ printf("%d ", matriz[i][j]); } // passa para a próxima linha da matriz printf("\n"); } // vamos calcular a soma dos elementos da diagonal // principal for(i = 0; i < linhas; i++){ for(j = 0; j < colunas; j++){ if(i == j){ soma_diagonal = soma_diagonal + matriz[i][j]; } } } // finalmente mostramos a soma da diagonal principal printf("\nA soma dos elementos da diagonal principal é: %d" , soma_diagonal); printf("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Informe o valor para a linha 0 e coluna 0: 3 Informe o valor para a linha 0 e coluna 1: 7 Informe o valor para a linha 0 e coluna 2: 9 Informe o valor para a linha 1 e coluna 0: 2 Informe o valor para a linha 1 e coluna 1: 4 Informe o valor para a linha 1 e coluna 2: 1 Informe o valor para a linha 2 e coluna 0: 5 Informe o valor para a linha 2 e coluna 1: 6 Informe o valor para a linha 2 e coluna 2: 8 3 7 9 2 4 1 5 6 8 A soma dos elementos da diagonal principal é: 15 |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de C - Escreva um programa C para mover todos os zeros para o final do vetor, sem alterar a ordem dos elementos já presentes no arrayQuantidade de visualizações: 815 vezes |
Pergunta/Tarefa: Dado o seguinte vetor de inteiros: // vamos declarar e construir um vetor de 8 inteiros int valores[] = {0, 3, 0, 5, 7, 4, 0, 9}; Sua saída deverá ser parecida com: Vetor na ordem original: 0 3 0 5 7 4 0 9 Vetor com os zeros deslocados para o final: 3 5 7 4 9 0 0 0 Veja a resolução comentada deste exercício usando C: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <locale.h> int main(int argc, char *argv[]){ // vamos declarar e construir um vetor de 8 inteiros int valores[] = {0, 3, 0, 5, 7, 4, 0, 9}; int i; // para o controle do laço int j; // variável auxiliar int temp; // variável temporária setlocale(LC_ALL,""); // para acentos do português // vamos mostrar o vetor na ordem original printf("Vetor na ordem original:\n"); for(i = 0; i < 8; i++){ printf("%d ", valores[i]); } // vamos inicializar j como 0 para que ele aponte para // o primeiro elemento do vetor j = 0; // agora o laço for percorre todos os elementos do vetor, // incrementanto a variável i e deixando o j em 0 for(i = 0; i < 8; i++){ // encontramos um valor que não é 0 if(valores[i] != 0){ // fazemos a troca entre os elementos nos índices // i e j temp = valores[i]; valores[i] = valores[j]; valores[j] = temp; // e avançamos o j para o elemento seguinte j++; } } // agora mostramos o resultado printf("\n\nVetor com os zeros deslocados para o final:\n"); for(i = 0; i < 8; i++){ printf("%d ", valores[i]); } printf("\n\n"); system("pause"); return 0; } Não se esqueça: A resolução do exercício deve ser feita sem a criação de um vetor, array ou lista adicional, e os elementos diferentes de zero devem permanecer na mesma ordem que eles estavam antes. |
C ::: Dicas & Truques ::: Strings e Caracteres |
Como criar sua própria função substring() para obter uma substring a partir de uma string em CQuantidade de visualizações: 16899 vezes |
Em algumas situações precisamos obter uma substring a partir de uma string. A linguagem C já fornece algumas funções que tornam isso possível. No entanto, nenhuma destas funções permite especificar o índice inicial da substring. Sendo assim, o trecho de código abaixo mostra como escrever uma função substring() que permite informar a string de origem, o índice inicial e a quantidade de caracteres que serão obtidos. O retorno da função será um ponteiro para a substring obtida:---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <string.h> char *substring(char *origem, int inicio, int quant){ char *res = origem; int i = 0; // posição inicial menor que 0 ou // posição inicial muito exagerada? if((inicio < 0) || (inicio > strlen(origem))) inicio = 0; // quantidade de caracteres muito exagerada? if(quant > inicio + strlen(origem)) quant = strlen(origem) - inicio; // obtem os caracteres desejados for(i = 0; i <= quant - 1; i++){ res[i] = origem[inicio + i]; } // marca o fim da string res[i] = '\0'; return res; } int main(int argc, char *argv[]) { char texto[] = "Gosto muito de C e C++"; // não podemos bagunçar a string original char sub_temp[128]; strcpy(sub_temp, texto); // 10 caracteres começando // no índice 6 char *res = substring(sub_temp, 6, 10); // exibe o resultado puts(res); // exibe a string original puts(texto); system("pause"); return 0; } Ao executar este código nós teremos o seguinte resultado: muito de C Gosto muito de C e C++ |
Vamos testar seus conhecimentos em |
Domínios de Deformações Vigas de concreto armado, com seções submetidas a um momento fletor e a um esforço cortante, são dimensionadas de tal forma que se determine uma armadura longitudinal para resistir ao momento fletor e uma armadura transversal para resistir ao esforço cortante. Analise as informações a seguir, a respeito da solicitação normal do tipo momento fletor: I) Solicitação de flexão simples ocorre quando a única solicitação atuante é o momento fletor. II) Solicitação de flexão composta ocorre quando, além do momento fletor, há uma força normal atuante. III) Solicitação de flexão oblíqua ocorre quando o plano de flexão compreende um eixo de simetria da seção transversal. Assinale a alternativa correta: A) Somente a afirmação I está correta. B) Somente as afirmações I e II estão corretas. C) Somente a afirmação II está correta. D) Somente a afirmação III está correta. E) Somente as afirmações II e III estão corretas. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em JavaScript |
Analise o seguinte código JavaScriptvar a = new Array("teste", 1, 2, -1, -2, 0xFFFFF); a.sort(); document.write(a); Qual é o resultado de sua execução? A) teste,1,2,-1,-2,1048575 B) -1,-2,1,1048575,2,teste C) Um erro na criação do array D) teste,-2,-1,1,2,1048575 Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Características do concreto armado No campo da engenharia, a reologia desempenha um papel crucial no estudo do comportamento de materiais, especialmente quando submetidos a forças ou tensões. Ela investiga como os materiais reagem a essas forças e como suas propriedades podem variar de acordo com fatores como taxa de deformação, temperatura e pressão. No contexto do concreto armado, um fenômeno reológico em particular ocorre quando a deformação do material aumenta com o tempo sob carregamento constante em comparação com a deformação inicial. Como esse fenômeno é classificado na reologia do concreto armado? A) Retração. B) Expansão. C) Fluência. D) Variação de temperatura. E) Deformações excessivas. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Tintas As tintas são misturas líquidas ou em pó utilizadas para colorir, proteger e embelezar superfícies diversas, como paredes, metais, plásticos, madeiras e muito mais. Elas são compostas de vários componentes que desempenham funções específicas para proporcionar as características desejadas. Associe os componentes das tintas utilizadas na construção civil e suas respectivas funções: I. Pigmentos II. Solventes III. Aglutinantes ( ) São também conhecidos como ligantes, e uma de suas funções é a capacidade de formar uma película sólida quando a tinta é aplicada. ( ) São responsáveis por conferir cor, opacidade e estabilidade à tinta. ( ) São usados para ajustar a viscosidade da tinta, tornando-a adequada para aplicação. Marque a ordem da associação correta. A) III, II, I. B) II, I, III. C) I, II, III. D) II, III, I. E) III, I, II. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em JavaScript |
Qual é o local correto para a inserção de códigos JavaScript em um documento HTML? A) Seção <head> B) Seção <body> C) Os códigos JavaScript podem ser colocados tanto na seção <head> quanto na seção <body> Verificar Resposta Estudar Cards Todas as Questões |
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |