Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int succ(int x) {
- return ++x;
- }
- // Gibt den Vorgänger des übergebenen Wertes zurück
- int pre(int x) {
- return --x;
- }
- int add(int x, int y) {
- if (y == 0) {
- return x;
- } else {
- return add(succ(x), pre(y));
- }
- }
- int sub(int x, int y) {
- if (y == 0) {
- return x;
- } else {
- return sub(pre(x), pre(y));
- }
- }
- int mult(int x, int y) {
- if (y == 0) {
- return 0;
- }
- else if (x > 0){
- return add(x, mult(x, pre(y)));
- }
- else{
- return sub(mult(succ(x), y), y);
- }
- }
- int main() {
- printf("%i\n", add(2,0));
- printf("%i\n", sub(2,0));
- printf("%i\n", mult(2,0));
- printf("%i\n", add(-3,2));
- printf("%i\n", sub(-3,2));
- printf("%i\n", mult(-3,2));
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement