Comment convertir du langage de programmation c++. en c

Résolu/Fermé
Fatma - Modifié le 3 janv. 2022 à 13:20
Dalfab Messages postés 706 Date d'inscription dimanche 7 février 2016 Statut Membre Dernière intervention 2 novembre 2023 - 31 déc. 2021 à 00:50
#include <iostream>

using namespace std;

int main(){
    cout << "Vos deux entiers? ";
    int a, b;
    cin >> a >> b;
    while (not(a >= 0 and b >= 0)) {
        cout << "Retapez? ";
        cin >> a >> b;
    }
    int p = a * b;
    cout << a << "*" << b << endl;
    int s = 0;
    while (b > 0) {
        if (b % 2 == 1) {
            b -= 1;
            s += a;
        } else {
            a *= 2;
            b /= 2;
        }
        cout << " = " << a << "*" << b << " + " << s << endl;
    }
    cout << " = " << s << endl;
    if (s != p) {
        cout << "OUPS.... calcul errone" << endl;
    }
    return 0;
}
A voir également:

1 réponse

Dalfab Messages postés 706 Date d'inscription dimanche 7 février 2016 Statut Membre Dernière intervention 2 novembre 2023 101
Modifié le 3 janv. 2022 à 13:22
Bonjour,

C'est du C++ mais c'est écrit "à la façon C", il y a juste cout et cin qui correspondent à printf et scanf à convertir, ça donne:
#include <stdio.h>

int main(){
    printf("Vos deux entiers? ");
    int a, b;
    scanf("%d%d", &a, &b);
    while (!(a >= 0 && b >= 0)) {
        printf("Retapez? ");
        scanf("%d %d", &a, &b);
    }
    int p = a * b;
    printf("%d*%d", a, b);
    int s = 0;
    while (b > 0) {
        if (b % 2 == 1) {
            b -= 1;
            s += a;
        } else {
            a *= 2;
            b /= 2;
        }
        printf(" = %d*%d + %d\n", a, b, s);
    }
    printf(" = %d\n", s);
    if (s != p) {
        printf("OUPS.... calcul errone\n");
    }
    return 0;
}
0