Hola dopey, tienes que tratar de entender el código que escribes pues es la mejor manera de poder resolver problemas y hacer que las cosas funcionen.
El apartado a) te dice que el bucle debe contar desde 50 hasta 40. ¿Entonces, cuál es la condición que debe dar lugar a que el bucle finalice? Que aquella variable de control que hayamos escogido tenga un valor menor de 40. El bucle se debe realizar mientras la variable de control sea mayor o igual que 40.
La variable la has inicializado bien: empieza a contar en 50, por tanto $galletas = 50; está bien; sin embargo, ¿qué condición de finalización has puesto?
Has puesto como condición de entrada al bucle:
mientras ($galletas - 10)
Esto equivale a
mientras ($galletas - 10 == true)
Esta condición no tiene sentido.
¿Qué condición tienes que poner en el bucle? mientras la variable de control sea mayor o igual que 40... ejecutar el bucle
Entonces la variable de control entrará con un valor e irá descendiendo (porque tú has indicado $galletas-- que significa que en cada repetición del bucle vaya descendiendo una unidad) y se irá repitiendo hasta llegar a la condición de no entrada.
No te escribo el código para que trates de hacerlo por tí mismo.