Faça um programa que esboce o gráfico das seguintes funções na mesma tela.

Passo 1

Beleza, vamos desenrolar o enunciado. A ideia é fazer um programa que mostre o gráfico da função por partes
f(x)= x^2 - 4, &se x<3, 2x - 1, &se x>=3
Conteúdo: funções definidas em pedaços (piecewise) e uso de Python com NumPy e Matplotlib para plotar. A gente vai precisar de:
  • Python instalado;
  • Biblioteca NumPy (para criar vetores de valores de x);
  • Biblioteca Matplotlib (para desenhar o gráfico);
  • Noções de como “mascarar” parte do vetor para cada pedaço da função.

Passo 2

Primeiro, vamos criar a lista de valores de que queremos representar. Geralmente escolhemos um intervalo maior que cubra bem a parte importante do gráfico, por exemplo de a . Com NumPy:
import numpy as np
x = np.linspace(-10, 10, 400)
Aqui linspace gera 400 pontos igualmente espaçados entre e . Quanto mais pontos, mais suave fica o gráfico.

Passo 3

Agora dividimos esse vetor x em dois pedaços, usando comparação booleana (máscaras).
mask1 = x < 3     # True para os xs menores que 3
mask2 = x >= 3    # True para os xs maiores ou iguais a 3
A teoria aqui é simples: um vetor de booleanos marca quais índices obedecem à condição. Aí podemos calcular cada parte de f(x):
y1 = x[mask1]**2 - 4       # f(x) = x^2 - 4 quando x<3
y2 = 2*x[mask2] - 1        # f(x) = 2x - 1 quando x>=3

Passo 4

Chegou a hora de plotar. Importamos Matplotlib e traçamos cada pedaço com cores diferentes, adicionando legenda, eixos e grade pra ficar mais bacana.
import matplotlib.pyplot as plt

plt.plot(x[mask1], y1, label=r'$x^2 - 4$ (para $x<3$)', color='blue')
plt.plot(x[mask2], y2, label=r'$2x - 1$ (para $x\ge3$)', color='red')
plt.axvline(3, color='gray', linestyle='--', alpha=0.5)  # linha vertical em x=3 (opcional)
plt.legend()
plt.xlabel('x')
plt.ylabel('f(x)')
plt.title('Gráfico da função por partes')
plt.grid(True)
plt.show()

Passo 5

O que rolou aqui?
  • plt.plot(...) desenha cada ramo separado;
  • r'$...$' faz o Matplotlib interpretar texto em LaTeX, então a legenda mostra e bonitinho;
  • axvline(3, ...) serve só pra evidenciar o ponto de troca em ;
  • legend(), xlabel(), ylabel(), title() e grid() são detalhes pra deixar o gráfico mais legível.

Resposta

Segue o programa completo em Python para exibir na mesma tela o gráfico da função:
import numpy as np
import matplotlib.pyplot as plt

# 1. Criar vetor de x
x = np.linspace(-10, 10, 400)

# 2. Máscaras para a parte <3 e >=3
mask1 = x < 3
mask2 = x >= 3

# 3. Cálculo de y para cada ramo da função
y1 = x[mask1]**2 - 4
y2 = 2*x[mask2] - 1

# 4. Plotar
plt.plot(x[mask1], y1, label=r'$x^2 - 4$ (para $x<3$)', color='blue')
plt.plot(x[mask2], y2, label=r'$2x - 1$ (para $x\ge3$)', color='red')
plt.axvline(3, color='gray', linestyle='--', alpha=0.5)
plt.legend()
plt.xlabel('x')
plt.ylabel('f(x)')
plt.title('Gráfico da função por partes')
plt.grid(True)
plt.show()

Exercícios relacionados