We were unable to load Disqus. If you are a moderator please see our troubleshooting guide.

Anonymous • 1 year ago

Faça um programa, em linguagem C, que:
a) Crie uma struct chamada ponto2d que tenha como atributos os pontos x,y.
b) Crie duas estruturas do tipo ponto2d chamadas ponto_inicial e ponto_final.
c) Mostre um menu com as seguintes opções e implemente‐as:
[1] ‐ Digitar os valores do primeiro ponto
[2] - Digitar os valores do segundo ponto
[3] ‐ Mostrar a distância entre os pontos
[4] ‐ Sair
Dica:
Distância entre dois pontos (x1,y1)(x2,y2): 𝑑 = √(𝑥1 − 𝑥2
)
2 https://uploads.disquscdn.c...

Túrin Turambar • 2 years ago

Na quarta questão há um pequeno erro no printf do código:

int a=5, b=12, c;
int *p;
int *q;
p = &a;
q = &b;
c = *p + *q;
printf("c = %d", *c);

Desta maneira, o código está imprimindo o endereço de c e não o seu conteúdo. O certo seria: printf("c = %d", c).

Marco Vaz • 2 years ago

João,

Você tem razão. Irei alterá-lo.

Anonymous • 1 year ago

tabela de precos de estacionamento
tempo valor
até 20 min isento
até uma hora R$9,00
até 2 horas R$13,00
3 até 16 horas R$2,50 a mais por hora
17 até 24 horas preco unico de R$50,50
faça um programa que leia hora e minuto de entrada de um estacionamento e a hora e minuto de saida, e calcule e escreva quanto o usuario deve pagar.
considere que a hora é sempre arredondada "para cima", ou seja, se o usuario ficou 1 horas e 1 minuto deverá pagar 2 horas. E considere que ele pode entrar em um dia e sair no dia seguinte, nunca ficando mais do que 23 horas e 59 minutos.

Gustavo Rafael • 1 week ago

Alguem fez a resposta da questão 4?

Anabela Santos • 2 months ago

Boa tarde
Não entendo o porquê de neste exercicio
int x, y, *p;
y = 0;
p = &y;
x = *p;
x = 4;
(*p)++;
--x;
(*p) += x;
printf("x=%d y=%d *p=%d", x, y, *p);

y ser igual a 4

Alguém me pode esclarecer?

Anonymous • 7 months ago

RESPOSTA exercício 01:

#include<stdio.h>
#include<stdlib.h>

int main(){
float projetos[10];
int i;
struct{
int numero;
float valor;
char tipo;
}boleto;
/*Inicializa o vetor*/
for(i = 0; i < 10; i++){
projetos[i] = 0.0;
}

while (boleto.numero < 09) {
printf("\n\nDigite o código do projeto: ");
scanf("%d", &boleto.numero);
printf("\n\nDigite o Valor : ");
scanf("%f", &boleto.valor);
printf("\n\nDigite o tipo de transação (R ou D): ");
getchar();//limpar o teclado do Enter anterior
scanf("%c", &boleto.tipo);

if (boleto.tipo == 'R' ||boleto.tipo == 'r'){
projetos[boleto.numero] = projetos[boleto.numero] + boleto.valor;
}
else{
if (boleto.tipo == 'D' ||boleto.tipo == 'd'){
projetos[boleto.numero] = projetos[boleto.numero] - boleto.valor;

}
else{
printf("Tipo Invalido !!");
}
/*printf("\n\nDigite o codigo do projeto: ");
scanf("%d",boleto.numero);*/

}
for (i = 0; i < 10; i++){
printf("\nSaldo do projeto %d = %f ",i, projetos[i]);
}
}
}

PabloRodriguesUmbelino • 3 years ago

Prof. Marcos, tem alguma forma de testa o meu código em um programa online? Todos o que testei da erro tanto aqui quanto no Repl.it deu erro.

Marco Vaz • 3 years ago

Pablo,
Tem sim. Mas, seu programa roda no devc++?

Mateus18 • 1 year ago

Professor, o código desta 3° Questão não funciona como deveria.

MarcoVaz • 1 year ago

Pablo,

Qual a questão?

Mateus18 • 1 year ago

Bem, ele não funciona nos programas DEV++, Visual Studio, sempre aparece erros, no próprio compilador mesmo, ele só lê a última frase digitada a primeira ele ignora, além da função toupper() também não funcionar. Pelo menos foram esses erros que observei rodando o código.

unknown • 1 year ago

Sim mano, esse programa não tá funcionando do jeito que deveria aqui também