const categorias = {
  bronze: {
    maxParcelas: 2,
  },
  prata: {
    desconto: 0.95,
    maxParcelas: 4,
  },
  ouro:  {
    desconto: 0.98,
    maxParcelas: 20,
  },
  diamante: {
    desconto: 0.10,
  },
}

function calcularPreco(categoria, valor) {
  return valor * (categorias[categoria]?.desconto || 1);
}

function calcularParcelas(categoria) {
   return categorias[categoria]?.maxParcelas || 10;
}

Pronto, agora fica fácil adicionar categorias e funções.

Sim, esta é uma das várias implementações possíveis de strategy, com todas as vantagens que este pattern traz.

O problema é que vc ainda está preso à ideia de que DP é só sobre orientação a objetos, e que só dá pra fazer com classes. Não é, e novamente deixo o link para o artigo que mostra como implementar em C (sem usar classes e orientação a objeto, portanto).

E segue também os demais links que indiquei em outro comentário:

O que acontece é que o livro do GoF se tornou tão popular que fez com que muita gente achasse que DP e OO são a mesma coisa, ou que só dá pra fazer o primeiro usando o segundo.