PseudoCódigo

Pessoal, eu preciso de ajuda, tenho trabalhos pra entregar de Calculo Numérico e tenho que escrever o pseudocódigo, não só pra inserir no relatório mas tbm pro pessoal do meu grupo entender, pois eles não sabem programar e pra facilitar eu uso java e um que quis começar a aprender programação, escolheu Python, então por favor me ajudem a escrever o pseudocodigo:

Eu ainda tenho mais 4 trabalhos pra fazer o pseudocodigo mas, se me ajudarem nesse, acredito que consigo fazer os outros tranquilo.

package calculonumerico;

import static java.lang.Math.cos;
import static java.lang.Math.log;
import static java.lang.Math.pow;
import static java.lang.Math.sin;
import java.util.Scanner;

public class AproximacaoDeRaizes {
    static double xA, xB, tolerancia, nDeIteracoes;
    static double[] resultadoBissecao = new double[3];
    static double[] resultadoNewton = new double[3];
    static Scanner input = new Scanner(System.in);
    
    private static double funcao(double x) {
        //retorna o resultado da função com o valor x inserido
        double y = pow(x,2)/4 - cos(x);
        return y;
    }
    private static double funcaoI(double x) {
        //retorna o resultado da derivada da função com o valor x inserido
        return x/2 + sin(x);
    }
    public static void main(String[] args) {
        //inicia o código
        //caso em a = 1 e b = 1.5
        //caso em a = 1.1 e b = 1.3
        definirIntervalo();
        System.out.println("Numero de Iterações minimas: " + nDeIteracoes);
        System.out.println("f(a) = " + funcao(xA));
        System.out.println("f(b) = " + funcao(xB));
        System.out.println("-@-@-@-@-@-@-@-@-@-@-@-@-@-@-@-@-@-@-@-@-");
        metodoDaBissecao();
        metodoNewtonRaphson();
        System.out.println("_______________Resultados_________________");
        System.out.println("Método da Bisseção");
        resultadoFinal((int)resultadoBissecao[0], resultadoBissecao[1], resultadoBissecao[2]);
        System.out.println("__________________________________________");
        System.out.println("Método Newton-Raphson");
        resultadoFinal((int)resultadoNewton[0], resultadoNewton[1], resultadoNewton[2]);
    }
    private static void definirIntervalo() {
        //Define um intervalo (A,B)
        System.out.println("Defina um valor A: ");
        xA = input.nextDouble();
        System.out.println("Defina um valor B: ");
        xB = input.nextDouble();
        if (condicaoDasEstimativas(funcao(xA), funcao(xB))) {
            tolerancia = pow(10,-5);
            nDeIteracoes = (int)(log((xB - xA)/tolerancia)/log(2) + 1);
        } else {
            erroDeValores(funcao(xA), funcao(xB));
            definirIntervalo();
        }
    }
    
    private static void metodoDaBissecao() {
        //Aplica o método da Bissecao e guarda o numero de iterações feitas, o x encontrado e o valor da f(x);
        double x, xUm, xDois;
        int iteracao = 0;
        xUm = xA;
        xDois = xB;
        System.out.println("Começo da Bissecao:_____");
        do {
            System.out.println("@Entrada----------------------");
            System.out.println("x1 = " + xUm);
            System.out.println("x2 = " + xDois);
            iteracao++;
            x = estimativaX(xUm, xDois);
            if(funcao(x) > 0) {
                if(funcao(xUm) < 0) {
                    xDois = xUm;
                }
            } else {
                if(funcao(xUm) > 0) {
                    xDois = xUm;
                }
            }
            xUm = x;

            valoresDaIteracao(x, iteracao, funcao(x));
        } while(criterioDeParada(funcao(xUm)));
        resultadoBissecao[0] = iteracao;
        resultadoBissecao[1] = x;
        resultadoBissecao[2] = funcao(x);
    }
    private static void metodoNewtonRaphson() {
        //Aplica o método de Newton-Raphson e guarda o numero de iterações, o x encontrado e o valor de f(x);
        double xM, xUm, xDois;
        int interacao = 0;
        xUm = xA;
        xDois = xB;
        System.out.println("Começo de Newton-Raphson:_____");
        do {
            System.out.println("@Entrada----------------------");
            System.out.println("x1 = " + xUm);
            System.out.println("x2 = " + xDois);

            if(interacao > 0) {
                xUm = xDois;
            } else if(interacao == 0) {
                xUm = estimativaX(xUm, xDois);
            }
            interacao++;
            xDois = estimativaX(xUm);

            valoresDaIteracao(xDois, interacao, funcao(xDois));

        } while(criterioDeParada(funcao(xDois)));
        resultadoNewton[0] = interacao;
        resultadoNewton[1] = xDois;
        resultadoNewton[2] = funcao(xDois);
    }
    private static boolean condicaoDasEstimativas(double yUm, double yDois) {
        //Retorna true se a raiz estiver entre os dois y;
        return yUm*yDois < 0;
    }
    private static double estimativaX(double a, double b) {
        //Realiza a estimativa de x
        return (a+b)/2;
    }
    private static double estimativaX(double xM) {
        //Realiza a estimativa de x para o método de Newton-Raphson;
        return xM - funcao(xM)/funcaoI(xM);
    }
    private static boolean criterioDeParada(double y) {
        //Verifica se o y encontrado é menor que a tolerancia;
        if(y < 0) {
            y = y*(-1);
        }
        return y >= tolerancia;
    }
    private static void valoresDaIteracao(double x, int iteracoes, double y) {
        //Imprime a iteração atual e seus valores de x e f(x);
        System.out.println("@Saída------------------------");
        System.out.println("x = " + x);
        System.out.println("interação = " + iteracoes);
        System.out.println("f(x) = " + y);
    }
    private static void erroDeValores(double yUm, double yDois) {
        //Alerta se entre os pontos a e b não se tem certeza de existir uma raiz;
        System.out.println("f(a) = " + yUm);
        System.out.println("f(b) = " + yDois);
        System.out.println("Mude o A ou o B!");
    }
    private static void resultadoFinal(int iteracoes, double x, double y) {
        //imprime o valor aproximado da raiz e o valor da f(x);
        System.out.println("Estimativa x" + iteracoes + " = " + x);
        System.out.println("f(x"+ iteracoes+") = " + y);
    }
}