alecounter
Membro Pleno-
Posts
42 -
Cadastrado em
-
Última visita
Reputação
21-
#include <stdio.h> #include <stdlib.h> int main() { int opcao, gx, gy, gz, px, py, pz, pw; printf("[1] Funcao de duas variaveis\n"); printf("[2] Funcao de tres variaveis\n"); printf("\nDigite a opcao desejada: "); scanf("%d",&opcao); setbuf(stdin,NULL); if(opcao == 1) { printf("Digite o vetor gradiente no formato (x,y): "); scanf("(%d,%d)",&gx,&gy); setbuf(stdin,NULL); printf("Digite o ponto do R3 no formato (x,y,f(x,y)): "); scanf("(%d,%d,%d)",&px,&py,&pz); setbuf(stdin,NULL); printf("\nEquacao parametrica da reta tangente:\n"); printf("\tx = (%d) + (%d)t\n",px,-gy); printf("\ty = (%d) + (%d)t\n",py,gx); printf("\tz = (%d) ; t variando na reta\n\n",pz); printf("Direcao de maior crescimento: (%d,%d)\n",gx,gy); printf("Direcao de menor crescimento: (%d,%d)\n",-gx,-gy); printf("Direcao em que nao ha variacao: (%d,%d)\n",-gy,gx); } else if(opcao == 2) { printf("Digite o vetor gradiente no formato (x,y,z): "); scanf("(%d,%d,%d)",&gx,&gy,&gz); setbuf(stdin,NULL); printf("Digite o ponto do R4 no formato (x,y,z,f(x,y,z)): "); scanf("(%d,%d,%d,%d)",&px,&py,&pz,&pw); setbuf(stdin,NULL); printf("\nEquacao parametrica da reta normal:\n"); printf("\tx = (%d) + (%d)t\n",px,gx); printf("\ty = (%d) + (%d)t\n",py,gy); printf("\tz = (%d) + (%d)t ; t variando na reta\n\n",pz,gz); printf("Equacao do plano tangente: (%d)x + (%d)y + (%d)z + (%d) = 0\n",gx,gy,gz,-(gx*px+gy*py+gz*pz)); printf("Direcao de maior crescimento: (%d,%d,%d)\n",gx,gy,gz); printf("Direcao de menor crescimento: (%d,%d,%d)\n",-gx,-gy,-gz); printf("Direcao em que nao ha variacao: qualquer vetor contido no plano tangente acima\n"); } else { printf("Opcao invalida\n"); } printf("\nPress any key to continue..."); getchar(); return(0); } int main2() { int inteiro,inter; scanf("(%d,%d)",&inteiro,&inter); printf("%d %d",inteiro,inter); return(0); } Cara, fiz um esboço de programa nos moldes que você falou. Fiz calculo 2 ano passado, então se não esqueci as coisas deve funcionar tudo ok (verifique). Só tá acontecendo um problema, na hora de usar o scanf tá dando problema na parte de numeros negativos da forma(0,-1) por exemplo. fica pra você resolver essa parte.
-
O vetor gradiente está avaliado no ponto dado?
-
Ativa o modo de compatibilidade para Windows 8 e veja se funciona...
-
Python Calculo Trigonométrico de sen^2
alecounter respondeu ao tópico de saulogoiana em Programação - outros
Usa o comando from math import sin Daí faz o uso da função sin(x)**2 pra x em radianos!!! -
Outro Criação de software gráfico
alecounter respondeu ao tópico de alecounter em Programação - outros
Pelo que vi só funciona no Windows. Acontece que preciso que funcione no Linux... conhece algum outro? -
Python Multiplicação e divisão no python
alecounter respondeu ao tópico de fabionps em Programação - outros
def mul(num1,num2,cont,soma): if(cont == num2): return(soma) soma += num1 cont += 1 return(mul(num1,num2,cont,soma)) def div(num1,num2,cont): if(num1 < num2): return(cont) num1 -= num2 cont += 1 return(div(num1,num2,cont)) def main(): print("Opcao 1: multiplicar dois numeros naturais") print("Opcao 2: dividir dois numeros naturais") print("\nDigite a opcao desejada: ",end="") opcao = int(input("")) while(not opcao in [1,2]): print("Opcao invalida!") print("\nDigite a opcao desejada: ",end="") opcao = int(input("")) num1 = int(input("Digite o 1º numero: ")) num2 = int(input("Digite o 2º numero: ")) if(opcao == 1): resultado = mul(num1,num2,0,0) if(opcao == 2): resultado = div(num1,num2,0) print("\nResultado: %d" % resultado) main() Fiz pra naturais, acho que a pior parte é essa. Agora é com você fazer as adaptações necessárias pra funcionar também para inteiros. -
Python Multiplicação e divisão no python
alecounter respondeu ao tópico de fabionps em Programação - outros
Pode usar recursão ? -
Boa tarde a todos, tenho que fazer um trabalho para a faculdade: criar um programa que desenhar na tela pontos e retas (e algumas coisas a mais). O problema é que nunca fiz um software gráfico antes... Alguém poderia por gentileza me indicar uma linguagem fácil pra fazer isso? Valeu
-
a complexidade computacional dos algoritmos não é igual. no meu algoritmo, a decisão de o número 'n' ser um primo ou não se baseia no fato de algum número contido em {2,3,...,int(sqrt(n))} dividir n. Se isso acontecer, a função cospe a resposta imediatamente. No caso do algoritmo do colega acima, o laço percorre o conjunto {1,2,...,n-1} em todos os casos e ainda itera sobre uma variável toda vez que ocorre uma divisão inteira. Podemos observar também que valores acima de int(sqrt(n)) nem precisariam ser verificados, pelo teorema fundamental da aritmética...
-
não vejo outra alternativa a não ser usar exceções, em especial pelo caso n=0. pelo algoritmo de euclides, se um número 'a' natural divide 0, então o quociente também é 0 e podemos escrever 0=0a. Percebe-se assim que qualquer valor contido no conjunto dos inteiros satisfaz isso, logo fica indeterminado. Contar divisores nesse caso não funciona(mesmo). adicionado 2 minutos depois algoritmo da divisão ***
-
aí é só tratar exceções... só colocar um if-else que leva alguns nanossegundos para ser computado
-
não amigo, eu simplesmente copiei o código que estava aqui no post no meu codeblock para windows e tudo funcionou bem. precisei apenas fazer uma alteração aqui: for(int i = 2; i <= int(sqrt(n)); i++) pois realmente não sabia que o valor de sqrt(n) seria truncado, pensei que fosse arredondado. Não sei o motivo pelo qual não funcionou no ambiente Linux onde estava anteriormente. Basicamente eu nem segui nada do que vcs disseram aqui adicionado 2 minutos depois entendi a lógica sim, obrigado pelo algoritmo como já disse, fiz uma alteração no código que fiz anteriormente e tudo funcionou bem
-
Eu já sei a definição de número primo. O que isso tem a ver com o problema? adicionado 9 minutos depois Problema resolvido. Uma pequena alteração no código resolveu o problema estranho que na faculdade eu fiz a mesma coisa e não funcionou por lá... Lá na faculdade é Linux e aqui windows, será que tem algo a ver? adicionado 17 minutos depois se o meu número n for da forma n=2k, pra k natural, então deveria funcionar para o 2 também. o código não funcionou por algum motivo desconhecido, já que copiei e colei aqui no codeblocks em casa e tudo funcionou bem...
-
por qual motivo isto está acontecendo?
-
eu coloquei outra condição, fiz assim for(int i = 2; i < n; i++) e mesmo assim a coisa ainda não funciona!
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais