Пожалуйста помогите Написать код ** С++1)Для заданных натуральных чисел a и b вычислить...

0 голосов
13 просмотров

Пожалуйста помогите Написать код на С++
1)Для заданных натуральных чисел a и b вычислить их наибольший общий делитель НОД(a.b), используя алгоритм Евклида:
НОД(a,b)=a eсли b=0
НОД(a,b)=b если a=0
НОД(a,b)= НОД(a mod b,b) если a>b и b не = 0
НОД(a,b)= НОД(a,b mod a) если a2)С
клавиатуры вводится строка символов, представляющая собой предложение со
знаками препинания (точка, запятая, восклицательный знак). Вывести на
экран все слова данного предложения, не содержащие цифр.


Информатика (16 баллов) | 13 просмотров
Дан 1 ответ
0 голосов
Задача 1.

#include
using namespace std;

int euclid(int a, int b)
{
    int t;
    while (b != 0) {
        t = b;
        b = a%b;
        a = t;
    }
    return a;
    while (a != b)
        if (a > b)
            a -= b;
        else
            b -= a;
        if (b = 0)
            return a;
        else
           
return euclid(b,a%b);
}

int main(){ 
    int a, b;
    cin >> a >> b;
    cout << euclid(a, b) << endl;<br>    return 0;
}


Задача 2.

#include
#include
using namespace std;

void main(){
    const char separator[] = " !.,";
    char s[256];
    char *ptr = NULL;
    int i;
    cin.getline(s,256);
    ptr = strtok(s, separator);
    while (ptr)
{
        for (i = 0; i < strlen(ptr); ++i)
            if (isdigit(ptr[i])!=0)
                break;
            if (i == strlen(ptr))
                cout << ptr << "\n";<br>        ptr = strtok(0, separator);
    }
}
(598 баллов)