А Дзукаев1562
?>

Требовалось написать программу, которая для введённого натурального числа n выводит общее количество его различных делителей, включая 1 и n. к сожалению, ученик написал программу с ошибками: pascal var n, j, k : integer; begin read(n); j : = 2; k : = 0; while j * j < n do begin if n mod j = 0 then k : = k + 2; j : = j + 1 end; if j * j = n then k : = k + 3; write(k) end. последовательно выполните следующее. 1. напишите, что выведет эта программа при вводе числа 10. 2. укажите два наименьших значения входной переменной n, при вводе которого программа выведет правильный ответ. укажите это ответ в каждом случае. 3. найдите в программе все ошибки (их может быть одна или несколько для каждой ошибки выпишите строку, в которой она допущена, и эту же строку в исправленном виде.

Информатика

Ответы

zubov-073620
1)   При вводе n = 10 будет выведено 2, хотя на самом деле должно быть 4 (1, 2, 5, 10).
2)  При n = 4 или n = 9 будет выведен правильный ответ при  n = 4,  k = 3,
при n = 9,  к = 3
3)  Ошибка в строке  k := 0;  должно быть k:=2;  - для делителей 1 и n
Ошибка в строке k := k + 3;  должно быть  k:=k+1,  если число n - полный квадрат, то добавляется  делитель кор.квадр(n).
alfaduk24908

Задание 2: Напишите интервью с известным казахстанским

спортсменом о том, как здоровый образ жизни в спортивных

достижениях. Используйте не менее 5 - ти количественных и

порядковых числительных в различных падежных формах, а также не

менее 5-ти местоимений разных разрядов.Задание 2: Напишите интервью с известным казахстанским

спортсменом о том, как здоровый образ жизни в спортивных

достижениях. Используйте не менее 5 - ти количественных и

порядковых числительных в различных падежных формах, а также не

менее 5-ти местоимений разных разрядов.

\

korj8
#include <iostream>
#include <math.h>
#include <cstdlib>
using namespace std;

int main()
{
   int position = 0;

    int i,j, ch,a,s;
    int* mass = NULL;
    cout << "Заданное число А: ";
    cin >> a;

    while (1)

    {
        cin >> ch;
        if (ch == 0) break;
        mass = (int*)realloc(mass, (position+1)*sizeof(int));
        mass[position] = ch;
        position++;

    }
    s=0;
    j=0;
    for (i=0;i<position;i++){
        if (((mass[i] > 0) && (mass[i+1] > 0)) || ((mass[i] < 0) && (mass[i+1] < 0)))
            j++;
        if (((mass[i] > 0) && (mass[i] < a)))
            s++;
    }

    cout << "Номер поседней пары: " << j << endl;
    cout << "Положительно и не больше А: " << s << endl;

    return 0;
}

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Требовалось написать программу, которая для введённого натурального числа n выводит общее количество его различных делителей, включая 1 и n. к сожалению, ученик написал программу с ошибками: pascal var n, j, k : integer; begin read(n); j : = 2; k : = 0; while j * j < n do begin if n mod j = 0 then k : = k + 2; j : = j + 1 end; if j * j = n then k : = k + 3; write(k) end. последовательно выполните следующее. 1. напишите, что выведет эта программа при вводе числа 10. 2. укажите два наименьших значения входной переменной n, при вводе которого программа выведет правильный ответ. укажите это ответ в каждом случае. 3. найдите в программе все ошибки (их может быть одна или несколько для каждой ошибки выпишите строку, в которой она допущена, и эту же строку в исправленном виде.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Рогов1996
Galinova2911
vapebroshop
krtatiana69
ivanovmk1977
vallod
Yelizaveta1848
ustinovalubov6666
pizniak
Vgubushkin
andre6807
timpavilion23
knyazev527
mbudilina
annatarabaeva863