Ir ao conteúdo
  • Cadastre-se

C livro "Como programar em c" ex 4.29


ibiiza

Posts recomendados

a) !(x<5) && !(y>=7) é equivalente a !((x<5) || (y>=7))
pois (!a && !b) => !(a || b)  
É só fazer a tabela verdade para confirmar
(!a && !b)        *   !(a || b)  
a   b   resultado *   a   b   resultado 
0   1   0         *   0   1   0 
1   0   0         *   1   0   0
1   1   0         *   1   1   0
0   0   1         *   0   0   1

Acho que o enunciado quer isso, que você monte estas tabelas verdades e mostre na tela. Se o resultado for igual, então as expressão são realmente equivalentes.

Link para o comentário
Compartilhar em outros sites

51 minutos atrás, Flávio Pedroza disse:

a) !(x<5) && !(y>=7) é equivalente a !((x<5) || (y>=7))
pois (!a && !b) => !(a || b)  
É só fazer a tabela verdade para confirmar
(!a && !b)        *   !(a || b)  
a   b   resultado *   a   b   resultado 
0   1   0         *   0   1   0 
1   0   0         *   1   0   0
1   1   0         *   1   1   0
0   0   1         *   0   0   1

Acho que o enunciado quer isso, que você monte estas tabelas verdades e mostre na tela. Se o resultado for igual, então as expressão são realmente equivalentes.

Certo mas nesse exercício eu teria que usar matriz ou vetor ? porque ainda nao aprendi isso 

Link para o comentário
Compartilhar em outros sites

Dá pra fazer sem matriz ou vetor

Aqui um exemplo:

#include <iostream>

int main()
{
    int x, y;
	printf ("Testando !(x<5) && !(y>=7):\n" );
	x = 5;
    y = 6;
    printf ("x: %d; y: % d; resultado: %d\n", x, y, !(x < 5) && !(y>=7));
    x = 5;
    y = 7;
    printf ("x: %d; y: % d; resultado: %d\n", x, y, !(x < 5) && !(y>=7));
    x = 4;
    y = 6;
    printf ("x: %d; y: % d; resultado: %d\n", x, y, !(x < 5) && !(y>=7));
    x = 4;
    y = 7;
    printf ("x: %d; y: % d; resultado: %d\n", x, y, !(x < 5) && !(y>=7));
    return 0;
}

você repete mudando a expressão para "!((x<5) || (y>=7))" e mantém os mesmos valores de x e y, o resultado deve dar igual

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

56 minutos atrás, Flávio Pedroza disse:

Dá pra fazer sem matriz ou vetor

Aqui um exemplo:


#include <iostream>

int main()
{
    int x, y;
	printf ("Testando !(x<5) && !(y>=7):\n" );
	x = 5;
    y = 6;
    printf ("x: %d; y: % d; resultado: %d\n", x, y, !(x < 5) && !(y>=7));
    x = 5;
    y = 7;
    printf ("x: %d; y: % d; resultado: %d\n", x, y, !(x < 5) && !(y>=7));
    x = 4;
    y = 6;
    printf ("x: %d; y: % d; resultado: %d\n", x, y, !(x < 5) && !(y>=7));
    x = 4;
    y = 7;
    printf ("x: %d; y: % d; resultado: %d\n", x, y, !(x < 5) && !(y>=7));
    return 0;
}

você repete mudando a expressão para "!((x<5) || (y>=7))" e mantém os mesmos valores de x e y, o resultado deve dar igual

Muito obrigado esclareceu muita coisa !

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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

×
×
  • Criar novo...