Exercício 16 out
1 selecionar o faturamento do posto nos anos de 2012 e 2014
select sum (valor) from valor_abastecimento join abastecimento using (id_abastecimento)
where data_abastecimento between '2012-01-01 00:00:00' and '2012-12-31 23:59:59' or data_abastecimento between '2014-01-01 00:00:00' and '2014-12-31 23:59:59'
-- com extract --
select sum (valor) from valor_abastecimento join abastecimento using (id_abastecimento)
where extract (year from data_abastecimento) in (2012,2014)
2 - selecionar a placa dos carros e a quantidade abastecida por cada um
select v.placa, sum(a.qtd_abastecida) from veiculo v join abastecimento a using (id_veiculo) group by 1
3 selecionar o nome do funcionário e a quantidade media abastecida por ele
durante o primeiro semestre de 2013 deve se ordenar da maior para a menor media
select f.nome , avg(a.qtd_abastecida) from funcionario f join abastecimento a
using (id_funcionario) where a.data_abastecimento between '2013-01-01 00:00:00' and '2013-06-30 23:59:59' group by 1 order by 2 desc;
--- com extract ---
select f.nome , avg(a.qtd_abastecida) from funcionario f join abastecimento a
using (id_funcionario) where extract (month from a.data_abastecimento) between 1 and 6 and extract (year from a.data_abastecimento) = 2013 group by 1 order by 2 desc;
4 - selecionar o nome do funcionário que abasteceu mais vezes
select f.nome from abastecimento a join funcionario f using (id_funcionario) group by 1 order by count (a.id_abastecimento) desc limit 1;
5 selecionar as placas dos veículos que não abasteceu no ano de 2014
select placa from veiculo where id_veiculo not in (select id_veiculo from abastecimento where data_abastecimento between '2014-01-01 00:00:00' and '2014-12-31 23:59:59')
-- com extract --
select placa from veiculo
where id_veiculo not in
(select id_veiculo from abastecimento
where extract (year from data_abastecimento) = 2014);
6 selecionar o nome do cliente e valor a ser pago pelo mesmo
no mes de abril de 2014
select c.nome, sum (valor)
from
veiculo v join abastecimento a using (id_veiculo)
join cliente c using (id_cliente)
join valor_abastecimento using (id_abastecimento)
where a.data_abastecimento between '2014-01-01 00:00:00' and '2014-04-30 23:59:59' group by 1;
7 selecionar o nome do combustível e qual o valor vendido de cada um
select c.tipo, sum(va.valor)
from combustivel c join abastecimento a using (id_combustivel) join valor_abastecimento va using (id_abastecimento) group by 1;
quinta-feira, 16 de outubro de 2014
sexta-feira, 10 de outubro de 2014
Escreva uma função que receba como parâmetro de entrada um número real e retorne como parâmetro de saída apenas a parte inteira do número. (Exemplo: parâmetro de entrada = 12,3421566666, parâmetro e saída = 12).
#include<stdio.h>
funcao(float *r,int *i)
{
*r = *i;
}
main()
{
int i;
float r;
printf("digite um numero real:");
scanf("%f",&r);
funcao(&r,&i);
printf("%d",i);
}
funcao(float *r,int *i)
{
*r = *i;
}
main()
{
int i;
float r;
printf("digite um numero real:");
scanf("%f",&r);
funcao(&r,&i);
printf("%d",i);
}
7. Escreva uma função que recebe como parâmetro de entrada a idade de uma pessoa em anos, meses e dias e retorna essa idade expressa em dias.
CODIGO C
#include <stdio.h>
#include <stdlib.h>
int convertedias(int anos, int meses, int dias){
int dias2;
dias2 = (anos * 365) + (meses * 30) + dias;
printf("Sua idade em dias e %d\n", dias2);
}
int main()
{
int anos, meses, dias;
printf("Informe a idade em anos, meses e dias\n");
scanf("%d %d %d", &anos, &meses, &dias);
convertedias(anos, meses, dias);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int convertedias(int anos, int meses, int dias){
int dias2;
dias2 = (anos * 365) + (meses * 30) + dias;
printf("Sua idade em dias e %d\n", dias2);
}
int main()
{
int anos, meses, dias;
printf("Informe a idade em anos, meses e dias\n");
scanf("%d %d %d", &anos, &meses, &dias);
convertedias(anos, meses, dias);
return 0;
}
terça-feira, 7 de outubro de 2014
Escreva uma função que recebe por parâmetro de entrada o raio de uma esfera e retorna como parâmetro de saída o seu volume (v = (4*PI*R3)/3).
Escreva uma função que recebe por parâmetro de entrada o raio de uma esfera e
retorna como parâmetro de saída o seu volume (v = (4*PI*R3)/3).
CODIGO:
#include<stdio.h>
funcao(int *raio)
{
float volume;
volume = (4 * 3,14 * *raio^3) / 3;
}
main()
{
int raio;
float volume;
printf("Digite o Valor do Raio : \n");
scanf("%d", &raio);
volume = funcao(&raio);
printf("%f",volume);
}
retorna como parâmetro de saída o seu volume (v = (4*PI*R3)/3).
CODIGO:
#include<stdio.h>
funcao(int *raio)
{
float volume;
volume = (4 * 3,14 * *raio^3) / 3;
}
main()
{
int raio;
float volume;
printf("Digite o Valor do Raio : \n");
scanf("%d", &raio);
volume = funcao(&raio);
printf("%f",volume);
}
Função - Media Aritmetica e Ponderada - Linguagem C
Elabore um programa contendo uma função que receba as três notas de um aluno como parâmetros e uma letra. Se a letra for A, a função deverá calcular a média aritmética das notas do aluno; se for P, deverá calcular a média ponderada, com pesos 5, 3 e 2. A média calculada deverá ser devolvida ao programa principal para, então, ser mostrada.
CODIGO:
#include<stdio.h>
notas(int *n1, int *n2, int *n3, char *tipo)
{
float media;
switch (*tipo){
case 'A':
media = (*n1 + *n2 + *n3) / 3.0;
break;
case 'P':
media = (5.0 * *n1 + 3.0 * *n2 + 2.0 * *n3) / 10.0;
break;
default:
printf("Opcao Invalida\n");
}
return media;
}
main (){
int n1,n2,n3;
char tipo;
float media;
printf("Digite as 3 notas do aluno e Digite A para Calcular a Media e P para Media Ponderada: \n");
scanf("%d %d %d %c",&n1,&n2,&n3,&tipo);
media = notas(&n1,&n2,&n3,&tipo);
printf("%f", media);
}
CODIGO:
#include<stdio.h>
notas(int *n1, int *n2, int *n3, char *tipo)
{
float media;
switch (*tipo){
case 'A':
media = (*n1 + *n2 + *n3) / 3.0;
break;
case 'P':
media = (5.0 * *n1 + 3.0 * *n2 + 2.0 * *n3) / 10.0;
break;
default:
printf("Opcao Invalida\n");
}
return media;
}
main (){
int n1,n2,n3;
char tipo;
float media;
printf("Digite as 3 notas do aluno e Digite A para Calcular a Media e P para Media Ponderada: \n");
scanf("%d %d %d %c",&n1,&n2,&n3,&tipo);
media = notas(&n1,&n2,&n3,&tipo);
printf("%f", media);
}
Assinar:
Postagens (Atom)