Buscar

Lista de vetores resolvida em C _ Passei Diretopt5

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Impresso por ow conta, CPF 087.521.573-42 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não
pode ser reproduzido ou repassado para terceiros. 16/07/2021 10:46:50
}
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
if(cont[j]>cont[i])
{
v=j;
}
}
}
}
printf("\nO vencedor e o candidato %s", candidato[v]);
return 0;
}
14) Escreva um programa que leia um conjunto de 50 fichas, cada uma contendo, a
altura e o código do sexo de uma pessoa (código = 1 se for masculino e 2 se for
feminino). Esses dados devem ser armazenados em vetores. Em seguida, o programa
deve inserir o nome das pessoas ordenadas pela altura (em ordem crescente).
#include<stdio.h>
#include<string.h>
int main (void)
{
char nome [50][20],auxiliarnome[20];
float vet[50],auxiliar=0;
int sexo[50],auxiliarsexo,i;
int j;
for(i=0;i<50;i++)
{
printf("Digite o nome da pessoa %d pessoa:",i+1);
scanf("%s",nome[i]);
printf("Digite a altura da pessoa %d pessoa:",i+1);
scanf("%f",&vet[i]);
printf("Digite o sexo da pessoa, 1.Homem 2.Mulher.\n");
scanf("%d",&sexo[i]);
Impresso por ow conta, CPF 087.521.573-42 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não
pode ser reproduzido ou repassado para terceiros. 16/07/2021 10:46:50
}
for(i=0;i<50;i++)
{
for(j=i+1;j<50;j++)
{
if(vet[i]>vet[j])
{
auxiliar=vet[i];
vet[i]=vet[j];
vet[j]=auxiliar;
strcpy(auxiliarnome,nome[i]);
strcpy(nome[i],nome[j]);
strcpy(nome[j],auxiliarnome);
auxiliarsexo=sexo[i];
sexo[i]=sexo[j];
sexo[j]=auxiliarsexo;
}
}
}
for(i=0;i<50;i++)
{
printf("%s",nome[i]);
printf("\naltura: %f,",vet[i]);
if(sexo[i]==1)
{
printf("masculino.\n");
}
if(sexo[i]==2)
{
printf("feminino.\n");
}
}
return 0;
}
15) Escreva um programa que leia um conjunto de N valores inteiros, onde N é um
número fornecido pelo usuário. Em seguida, o programa deve calcular e imprimir a
média, a variância e o desvio padrão dos valores lidos (amostra).
Impresso por ow conta, CPF 087.521.573-42 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não
pode ser reproduzido ou repassado para terceiros. 16/07/2021 10:46:50
#include<stdio.h>
#include<math.h>
int main(void)
{
float vetor[99999],soma=0,media,soma2=0,a,variancia,desvio,n;
int i;
printf("Digite a quantidade de termos:");
scanf("%f",&n);
for(i=0;i<n;i++)
{
printf("Digite o valor:");
scanf("%f",&vetor[i]);
soma=soma+vetor[i];
}
media=soma/n;
printf("Media dos valores:%f",media);
for(i=0;i<n;i++)
{
a=(vetor[i] - media);
a=a*a;
soma2=soma2+a;
}
variancia=soma2/(n-1);
printf("\nValor da variancia dos termos:%f",variancia);
desvio=sqrt(variancia);
printf("\nValor do desvio padrao dos termos:%f",desvio);
return 0;
}
16) Deseja-se publicar o número de acertos de cada aluno em uma prova em forma de
testes. A prova consta de 30 questões, cada uma com cinco alternativas identificadas
por A, B, C, D e E. Para isso são dados:
a) o cartão gabarito;
b) o número de alunos da turma;
c) o cartão de respostas para cada aluno, contendo o seu número e suas respostas.
#include <stdio.h>
#include <conio.h>
int main()
{
int q,j,alu,acertos;
char gab[30],resp[30];
printf("Digite a quantidade de alunos que realizou a prova: ");
Impresso por ow conta, CPF 087.521.573-42 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não
pode ser reproduzido ou repassado para terceiros. 16/07/2021 10:46:50
scanf("%d",&q);
printf("Digite o gabarito da prova em sequencia: ");
for (j =0;j<30;j++)
scanf("%c",&gab[j]);
for (alu=1;alu<=q;alu++)
{
acertos=0;
printf("Digite as respostas do aluno em sequencia %d: ", alu);
for (j=0;j<30;j++)
{
scanf(" %c", &resp[j]);
if (resp[j]==gab[j])
acertos=acertos+1;
}
printf("O aluno %d fez %d acertos\n", alu, acertos);
}
getch();
}
17) Dados dois vetores x e y, ambos com n elementos, determinar o produto escalar
desses vetores.
#include <stdio.h>
#include <conio.h>
#define MAX 10
int main() {
int j,n,i;
float prod,x[MAX],y[MAX];
printf("Digite o tamanho dos vetores:");
scanf("%d",&n);
printf("Digite os componentes do vetor x:\n");
for (j=0;j<n;j++)
scanf("%f",&x[j]);
printf("Digite os componentes do vetor y:\n");
for (j=0;j<n;j++)
scanf("%f",&y[j]);
prod=0;
for (j=0;j<n;j++)
prod=prod+x[j]*y[j];
printf("Produto escalar desses vetores: %f\n", prod);
getch();
}
18) Faça um programa para resolver o seguinte problema:
Impresso por ow conta, CPF 087.521.573-42 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não
pode ser reproduzido ou repassado para terceiros. 16/07/2021 10:46:50
São dadas as coordenadas reais x e y de um ponto, um número natural n, e as
coordenadas reais de n pontos (1 < n < 100). Deseja-se calcular e imprimir sem
repetição os raios das circunferências centradas no ponto (x,y) que passam por pelo
menos um dos n pontos dados.
Exemplo :
(x,y) = (1.0, 1.0) ; n = 5
Pontos : (-1.0, 1.2) , (1.5, 2.0) , (0.0, -2.0) , (0.0, 0.5) , (4.0, 2.0)
Nesse caso há três circunferências de raios: 1.12, 2.01 e 3.162.
Dois pontos estão na mesma circunferência se estão à mesma distância do centro.
#include<stdio.h>
#include<math.h>
int main(void)
{
float xp,yp;
printf("Coordenada x:");
scanf("%f",&xp);
printf("Coordenada y:");
scanf("%f",&yp);
int n;
printf("Valor de n:");
scanf("%d",&n);
if(n<1 || n>100)
{
printf("n deve ser menor do que 100 e maior do que 1.");
}
float x[n],y[n];
int i;
for(i=0;i<n;++i)
{
printf("Valor de x%d:",i+1);
scanf("%f",&x[i]);
printf("Valor de y%d:",i+1);
scanf("%f",&y[i]);
}
Impresso por ow conta, CPF 087.521.573-42 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não
pode ser reproduzido ou repassado para terceiros. 16/07/2021 10:46:50
float raio[n];
for(i=0;i<n;++i)
{
float dx=pow(xp-x[i],2);
float dy=pow(yp-y[i],2);
float R=sqrt(dx+dy);
raio[i]=R;
int j, repetido=0;
for(j=0;j<i;++j)
{
if(R==raio[j])
{
repetido=1;
}
}
if(repetido==0)
{
printf("%f\n",R);
}
}
return 0;
}
19) Dada uma seqüência x1, x2, ..., xk de números inteiros, verifique se existem dois
segmentos consecutivos iguais nesta seqüência, isto é, se existem i e m tais que:
xi, xi+1,..., xi+m-1 = xi+m, xi+m+1,..., xi+2m-1
Imprima, caso existam, os valores de i e m.
Exemplo: Na seqüência 7, 9, 5, 4, 5, 4, 8, 6 existem i=3 e m=2.
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
Impresso por ow conta, CPF 087.521.573-42 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não
pode ser reproduzido ou repassado para terceiros. 16/07/2021 10:46:50
int main (void)
{
int k,i,m,j;
printf("Digite o valor de K:");
scanf("%d",&k);
int x[k];
printf("Digite a sequencia de k numeros:\n");
for(j=0;j<k;++j)
{
printf("x%d:",j+1);
scanf("%d",&x[j]);
}
int resposta;
for(i=0;i<k;++i)
{
for(m=1;i+m<k;++m)
{
resposta=0;
for(j=0;i+j<i+m;++j)
{
if(x[i+j]==x[i+j+m])
{
++resposta;
}
else {break;}
}
if(resposta>1)
{
printf("i:%d\nm:%d\n",i+1,m);
}
}
}
return 0;
}
20) Dada uma seqüência de n números inteiros, determinar um segmento de soma
máxima. Exemplo:
Na seqüência 5, 2, -2, -7, 3, 14, 10, -3, 9, -6, 4, 1 , a soma do segmento é 33.
Impresso por ow conta, CPF 087.521.573-42 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não
pode ser reproduzido ou repassado para terceiros. 16/07/2021 10:46:50
#include<stdio.h>
int main (void)
{
int n;
printf("Digite o valor de n:");
scanf("%d",&n);
int seq[n];
printf("Digite a sequencial de n numeros:\n");
int j;
for(j=0;j<n;++j)
{
printf("%d O numero:",j+1);
scanf("%d",&seq[j]);
}
int tam;
int inicio;
int soma;
int tam_ssm=0;
int inicio_ssm=0;
int soma_ssm=0;
for(tam=1;tam<n;++tam)
{
for(inicio=0;inicio<n;++inicio)
{
soma=0;
for(j=0;j<tam;++j)
{
if(inicio+j>n-1) {break;}
soma=soma+ seq[inicio+j];
}
if(soma>soma_ssm){
soma_ssm=soma;
inicio_ssm=inicio;
tam_ssm=tam;
}
}
Impresso por ow conta, CPF 087.521.573-42 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não
pode ser reproduzido ou repassado para terceiros. 16/07/2021 10:46:50
}
for(j=0;j<tam_ssm;++j)
{
printf("%d,",seq[inicio_ssm+j]);
}
printf("\nSoma do segmento de soma maxima: %d", soma_ssm);
return 0;
}
21) Em uma classe há n alunos, cada um dos quais realizou k provas com pesos
distintos. Dados n , k, os pesos das k provas e as notas de cada aluno, calcular a
média ponderada das provas para cada aluno e a média aritmética da classe em cada
uma das provas.
#include<stdio.h>
#include<stdlib.h>
int main (void)
{
int n,k;
printf("Digite a quantidade de alunos:");
scanf("%d",&n);
printf("Digite a quantidade de provas:");
scanf("%d",&k);
int peso[k];
int i;
for(i=0;i<k;++i)
{
printf("Digite o peso da prova %d:",i+1);
scanf("%d",&peso[i]);
}
float notas[n][k];
int j;
for(i=0;i<n;++i)
{
printf("Aluno %d:\n",i+1);
for(j=0;j<k;++j)
{
printf("Digite:");
Impresso por ow conta, CPF 087.521.573-42 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não
pode ser reproduzido ou repassado para terceiros. 16/07/2021 10:46:50
scanf("%f",&notas[i][j]);
}
}
int soma_pesos=0;
for(i=0;i<k;++i)
{
soma_pesos=soma_pesos + peso[i];
}
for(i=0;i<n;++i)
{
printf("Media ponderada do aluno %d:",i+1);
float media_ponderada=0;
float soma_ponderada=0;
for(j=0;j<k;++j)
{
soma_ponderada=soma_ponderada+ (notas[i][j]*peso[j]);
media_ponderada=soma_ponderada/soma_pesos;
}
printf("%f\n",media_ponderada);
}
for(i=0;i<k;++i)
{
printf("Media da prova %d",i+1);
float media_prova=0;
float soma_notas=0;
for(j=0;j<n;++j)
{
soma_notas=soma_notas+notas[j][i];
media_prova=soma_notas/n;
}
printf("%f\n",media_prova);
}
return 0;
}

Mais conteúdos dessa disciplina