Subpage under development, new version coming soon!
Subject: Programação
Sei lá. Serei engenheiro, não programador. Não entendo isso :S
"Sabendo que o fatorial de um número inteiro n é n X (n - 1) X (n - 2) . . . 1, faça um
programa para calcular o fatorial de um número lido da entrada padrão usando o comando for e
apenas duas variáveis."
"Sabendo que o fatorial de um número inteiro n é n X (n - 1) X (n - 2) . . . 1, faça um
programa para calcular o fatorial de um número lido da entrada padrão usando o comando for e
apenas duas variáveis."
Mais um. Preciso mostrar o maior número, o menor e a média. O maior e o menor sai tranquilo, mas a média tá saindo errada...
#include
int main()
{
int i, n, num, maior, menor, soma;
float m;
printf("Entre com a quantidade de numeros: ");
scanf("%d",&n);
maior = 0; soma = 0.0;
for(i=1; i maior)
maior = num;
if (num < menor)
menor = num;
}
printf("O maior inteiro lido foi %d\n", maior);
printf("O menor inteiro lido foi %d\n", menor);
soma = soma + num;
m = soma/n;
printf("A media e' %.2f\n", m);
system("pause");
return(0);
}
EDIT: Consegui esse. Era só colocar os comandos de soma e m dentro do for...
(edited)
#include
int main()
{
int i, n, num, maior, menor, soma;
float m;
printf("Entre com a quantidade de numeros: ");
scanf("%d",&n);
maior = 0; soma = 0.0;
for(i=1; i maior)
maior = num;
if (num < menor)
menor = num;
}
printf("O maior inteiro lido foi %d\n", maior);
printf("O menor inteiro lido foi %d\n", menor);
soma = soma + num;
m = soma/n;
printf("A media e' %.2f\n", m);
system("pause");
return(0);
}
EDIT: Consegui esse. Era só colocar os comandos de soma e m dentro do for...
(edited)
www.google.com/codesearch
la você encontra todo codigo que precisar, seja la pra o que for.
la você encontra todo codigo que precisar, seja la pra o que for.
O MDC de euclides eu tenho aqui só que recursivo...
/*
* mdc.c
*
* Created on: 16/08/2010
* Author: 1A213703939
*/
#include
#include
int mdc (int n,int m);
int main (void) {
int n, m;
fflush (stdin);
scanf ("%d",&n);
fflush (stdin);
scanf ("%d",&m);
printf("%d",mdc(n,m));
return EXIT_SUCCESS;
}
int mdc(int n , int m) {
if (n % m == 0) {
return m;
} else {
return mdc (m , n % m);
}
}
:)
/*
* mdc.c
*
* Created on: 16/08/2010
* Author: 1A213703939
*/
#include
#include
int mdc (int n,int m);
int main (void) {
int n, m;
fflush (stdin);
scanf ("%d",&n);
fflush (stdin);
scanf ("%d",&m);
printf("%d",mdc(n,m));
return EXIT_SUCCESS;
}
int mdc(int n , int m) {
if (n % m == 0) {
return m;
} else {
return mdc (m , n % m);
}
}
:)
Preciso duma ajuda dos entendedores de java :p
Bom, eu preciso fazer um Sistema de Compra e Venda de Produtos.
Eu tenho as classes:
Pessoa - Mãe
Cliente - Filha
Fornecedor - Filha
Vendedor - Filha
E tenho um Vector de pessoas, junto com um método abstrato int getTipo() que retorna 1 para Fornecedor, 2 para Cliente e 3 para Vendedor.
Eu estou fazendo um método que adiciona uma pessoa no Vector de Pessoa chamado pessoas, mas eu preciso rodar ele antes e ver algumas exceções:
- Se já houver um CPF cadastrado para Cliente ou Vendedor, lançar uma exceção.
- Se já houver um CNPJ cadastrado para Fornecedor, também fazer o mesmo.
Enfim...já tentei de todas as formas fazer funcionar, mas até agora, o que saiu foi somente isso:
public static void inserirPessoa(Pessoa pessoa) throws SisComException {
System.out.println(pessoa.getTipo());
for (Pessoa objPessoa : pessoas) {
if (pessoa.getTipo() == 1) {
if (((Fornecedor) pessoa).getCnpj() == ((Fornecedor) objPessoa)
.getCnpj()) {
throw new SisComException(
"Já há um fornecedor com este CNPJ cadastrado!");
}
}
if (pessoa.getTipo() == 2) {
if (((Cliente) pessoa).getCpf() == ((Cliente) objPessoa)
.getCpf()) {
throw new SisComException(
"Já há um cliente com esse CPF cadastrado!");
}
}
if (pessoa.getTipo() == 3) {
if (((Vendedor) pessoa).getCpf() == ((Vendedor) objPessoa)
.getCpf()) {
throw new SisComException(
"Já há um vendedor com esse CPF cadastrado!");
}
}
}
if (!pessoas.isEmpty()) {
pessoa.setCodigo(pessoas.lastElement().getCodigo() + 1);
}
pessoas.addElement(pessoa);
}
Usei uns casts pra conseguir fazer até agora, mas eu tenho certeza que eles não estão funcionando, porque eu consigo adicionar 2 CPF's e 2 CNPJ's iguais.
Alguém pode me dar uma luz de como resolver isso? :)
(edited)
Bom, eu preciso fazer um Sistema de Compra e Venda de Produtos.
Eu tenho as classes:
Pessoa - Mãe
Cliente - Filha
Fornecedor - Filha
Vendedor - Filha
E tenho um Vector de pessoas, junto com um método abstrato int getTipo() que retorna 1 para Fornecedor, 2 para Cliente e 3 para Vendedor.
Eu estou fazendo um método que adiciona uma pessoa no Vector de Pessoa chamado pessoas, mas eu preciso rodar ele antes e ver algumas exceções:
- Se já houver um CPF cadastrado para Cliente ou Vendedor, lançar uma exceção.
- Se já houver um CNPJ cadastrado para Fornecedor, também fazer o mesmo.
Enfim...já tentei de todas as formas fazer funcionar, mas até agora, o que saiu foi somente isso:
public static void inserirPessoa(Pessoa pessoa) throws SisComException {
System.out.println(pessoa.getTipo());
for (Pessoa objPessoa : pessoas) {
if (pessoa.getTipo() == 1) {
if (((Fornecedor) pessoa).getCnpj() == ((Fornecedor) objPessoa)
.getCnpj()) {
throw new SisComException(
"Já há um fornecedor com este CNPJ cadastrado!");
}
}
if (pessoa.getTipo() == 2) {
if (((Cliente) pessoa).getCpf() == ((Cliente) objPessoa)
.getCpf()) {
throw new SisComException(
"Já há um cliente com esse CPF cadastrado!");
}
}
if (pessoa.getTipo() == 3) {
if (((Vendedor) pessoa).getCpf() == ((Vendedor) objPessoa)
.getCpf()) {
throw new SisComException(
"Já há um vendedor com esse CPF cadastrado!");
}
}
}
if (!pessoas.isEmpty()) {
pessoa.setCodigo(pessoas.lastElement().getCodigo() + 1);
}
pessoas.addElement(pessoa);
}
Usei uns casts pra conseguir fazer até agora, mas eu tenho certeza que eles não estão funcionando, porque eu consigo adicionar 2 CPF's e 2 CNPJ's iguais.
Alguém pode me dar uma luz de como resolver isso? :)
(edited)
Primeiro, soh usa vetor se for um requisito obrigatorio
Troca a meneira como você esta comparando
faz assim
public static void inserirPessoa(Pessoa pessoa) throws SisComException {
for (Pessoa objPessoa : pessoas) {
//O tipo depende de como vc guardou assumi que eh inteiro mas o padrao seria um Long ja que //servem como chave primaria pra banco de dados.
int cpf = objPessoa.getCpf();
int cnpj = objPessoa.getCnpj();
//Assumindo que se a pessoa nao tem cnpj retorna null
if(cnpj!=null){
if(pessoa.getCnpj().CompareTo(objPessoa.getCnpj) ==0){
throw new SisComException(
"Já há um fornecedor com este CNPJ cadastrado!");
}else{
pessoa.setCodigo(pessoas.lastElement().getCodigo() + 1);
pessoas.addElement(pessoa);
}else{
if(pessoa.getCpf().CompareTo(objPessoa.getCpf) ==0){
throw new SisComException(
"Já há um fornecedor com este cpfcadastrado!");
}else{
pessoa.setCodigo(pessoas.lastElement().getCodigo() + 1);
pessoas.addElement(pessoa);
}
}
}
}
Troca a meneira como você esta comparando
faz assim
public static void inserirPessoa(Pessoa pessoa) throws SisComException {
for (Pessoa objPessoa : pessoas) {
//O tipo depende de como vc guardou assumi que eh inteiro mas o padrao seria um Long ja que //servem como chave primaria pra banco de dados.
int cpf = objPessoa.getCpf();
int cnpj = objPessoa.getCnpj();
//Assumindo que se a pessoa nao tem cnpj retorna null
if(cnpj!=null){
if(pessoa.getCnpj().CompareTo(objPessoa.getCnpj) ==0){
throw new SisComException(
"Já há um fornecedor com este CNPJ cadastrado!");
}else{
pessoa.setCodigo(pessoas.lastElement().getCodigo() + 1);
pessoas.addElement(pessoa);
}else{
if(pessoa.getCpf().CompareTo(objPessoa.getCpf) ==0){
throw new SisComException(
"Já há um fornecedor com este cpfcadastrado!");
}else{
pessoa.setCodigo(pessoas.lastElement().getCodigo() + 1);
pessoas.addElement(pessoa);
}
}
}
}
nao fiz em nenhuma ide fiz a mao o codigo rapidinho entao, nao sei direito se contei o numero de parenteses certo.
outra coisa teu codigo tem uns erros semânticos por isso refiz ele.
(edited)
outra coisa teu codigo tem uns erros semânticos por isso refiz ele.
(edited)
Mas na classe Pessoa, não tem um método getCnpj e nem um método getCpf , o que faz com que eu precise fazer um cast, esse método getCnpj tá na classe Fornecedor e o getCpf tá na classe Cliente//Vendedor.
E eu preciso diferenciar Cliente / Vendedor / Fornecedor, por isso o getTipo()
:(
E eu tentei jogar aqui no Eclipse e ele me forcou a fazer o cast :P
E eu preciso diferenciar Cliente / Vendedor / Fornecedor, por isso o getTipo()
:(
E eu tentei jogar aqui no Eclipse e ele me forcou a fazer o cast :P
calma pra tudo tem um jeito
-)
vou dar uma arrumada ali entao.
pera
-)
vou dar uma arrumada ali entao.
pera
calma pra tudo tem um jeito
-)
vou dar uma arrumada ali entao.
pera
-)
vou dar uma arrumada ali entao.
pera
calma pra tudo tem um jeito
-)
vou dar uma arrumada ali entao.
pera
-)
vou dar uma arrumada ali entao.
pera
public static void inserirPessoa(Pessoa pessoa) throws SisComException {
for (Pessoa objPessoa : pessoas) {
//O tipo depende de como vc guardou assumi que eh inteiro mas o padrao seria um Long ja que //servem como chave primaria pra banco de dados.
int cpf = null;
int cnpj = null;
if (objPessoa instanceof Vendedor) {
int cnpj = objPessoa.getCnpj();
}else if(objPessoa instanceof Fornecedor){
int cnpj = objPessoa.getCnpj();
}else if(objPessoa instanceof Cliente){
int cpf= objPessoa.getCpf();
}
//Assumindo que se a pessoa nao tem cnpj retorna null
if(cnpj!=null){
if(pessoa.getCnpj().CompareTo(objPessoa.getCnpj) ==0){
throw new SisComException(
"Já há um fornecedor com este CNPJ cadastrado!");
}else{
pessoa.setCodigo(pessoas.lastElement().getCodigo() + 1);
pessoas.addElement(pessoa);
}else{
if(pessoa.getCpf().CompareTo(objPessoa.getCpf) ==0){
throw new SisComException(
"Já há um fornecedor com este cpfcadastrado!");
}else{
pessoa.setCodigo(pessoas.lastElement().getCodigo() + 1);
pessoas.addElement(pessoa);
}
}
}
}
Ao inves de usar o getTipo
usa o instanceOF
Assim, nao sei qo que vc ta fazendo presumo que seja um trabalho de escola ou algo assim, ai tudo bem usar alguams coisas que vc ta usando, mas quando for trabalhar, ou fazer algo que não seja um trabalho de escola que seja obrigado a usar alguams coisas.
tente usar o que ja existe pronto, que o codigo fica muito mais limpo e inteligivel.
não usa array, porque é sujeito a varios erros e é muito baixo nivel
e tenta evitar a herança que é furada.
usa o instanceOF
Assim, nao sei qo que vc ta fazendo presumo que seja um trabalho de escola ou algo assim, ai tudo bem usar alguams coisas que vc ta usando, mas quando for trabalhar, ou fazer algo que não seja um trabalho de escola que seja obrigado a usar alguams coisas.
tente usar o que ja existe pronto, que o codigo fica muito mais limpo e inteligivel.
não usa array, porque é sujeito a varios erros e é muito baixo nivel
e tenta evitar a herança que é furada.
É um trabalho da faculdade...e segundo meu professor de 97 anos de idade, tem que usar Vector junto com um arquivo .obj :)
ahsdhasdhasdhdas, enfim...não discuto muito com ele porque ele foi um dos fundadores do curso na minha faculdade...mesmo ele estando errado, não ajuda em muita coisa.
Mas em relação a esse código, ai que a vaca vai pro brejo :p
Eu conhecia o instanceof, mas segundo meu professor não é uma boa prática de programação.
Ou seja, isso foi praticamente dizer que instanceof é proibido nesse trabalho, e ele ainda complementou temos que usar de princípios do Poliformismo(!?), assim eu só consegui pensar no cast.
Achei um trabalho e um .pps dele aqui, vou tentar usar o cast como ele tá fazendo, volto depois com o resultado :D
(edited)
ahsdhasdhasdhdas, enfim...não discuto muito com ele porque ele foi um dos fundadores do curso na minha faculdade...mesmo ele estando errado, não ajuda em muita coisa.
Mas em relação a esse código, ai que a vaca vai pro brejo :p
Eu conhecia o instanceof, mas segundo meu professor não é uma boa prática de programação.
Ou seja, isso foi praticamente dizer que instanceof é proibido nesse trabalho, e ele ainda complementou temos que usar de princípios do Poliformismo(!?), assim eu só consegui pensar no cast.
Achei um trabalho e um .pps dele aqui, vou tentar usar o cast como ele tá fazendo, volto depois com o resultado :D
(edited)
Pra quem quer ver o modesto trabalho dele:
https://docs.google.com/document/pub?id=1X92oE33xCIvJURP8aYvg6gj972QSsUdQXirhXldcN8I
Os modelos já estão todos feitos, falta a classe Comercial e a InterfComercial.
https://docs.google.com/document/pub?id=1X92oE33xCIvJURP8aYvg6gj972QSsUdQXirhXldcN8I
Os modelos já estão todos feitos, falta a classe Comercial e a InterfComercial.
Não precisa fazer esses ifs todos. O que existe de comum entre o CNPJ e o CPF? De que forma você pode usar o polimorfismo pra fazer isso?
Respondendo a essas perguntas, você consegue resolver esse problema e de quebra atender o que o professor pediu. Se tiver dúvidas, procure por polimorfismo que você deverá entender o que o professou pediu.
Respondendo a essas perguntas, você consegue resolver esse problema e de quebra atender o que o professor pediu. Se tiver dúvidas, procure por polimorfismo que você deverá entender o que o professou pediu.