Сайт о программировании, математике и моделировании
Задачи и решения
Решений краевой задачи. Методом стрельбы
10 Январь
Решить краевую задачу методом стрельбы и полученное решение сравнить с аналитическим (если последнее можно найти). Результаты численного интегрирования представьте в виде графиков, которые необходимо строить для всех параметров .
Программа возведения в квадрат длинного числа
3 Декабрь
За операцию возведения в квадрат методом «треугольника» отвечает процедура SquareTri./ Вычисление квадрата длинного числа С = А2 методом «треугольника»
void SquareTri(
DIGIT C[ ], /* результат длины 2n цифр */
const DIGIT A[ ], /* основание длины n цифр */
int n) /* длина основания */ Читать дальше >
Программа умножения длинного числа на цифру
3 Декабрь
Приведем листинг программы, выполняющей умножение длинного числа на цифру.
/* Умножение длинного числа на цифру С = АЧх */
void ShortMul(
DIGIT C[ ], /* результат длины n+1 цифра */
const DIGIT A[ ], /* сомножитель длины n цифр */
DIGIT x, /* сомножитель длины 1 цифра*/
int n) /* длина A */ Читать дальше >
Реализация алгоритма вычитания длинных чисел
3 Декабрь
За операцию вычитания отвечает процедура Sub
/* Вычитание длинных чисел длины n цифр C=A-B.
В качестве результата возвращаем заем старшего разряда d */ Читать дальше >
Сложение длинного числа
3 Декабрь
Приведем реализацию алгоритма сложения, а также ввод и вывод длинного числа на Паскале.
{основная программа}
Var A, B, C : Tlong;
Begin
Assign(Input, ‘Input.txt’); Reset(Input);
ReadLong(A); ReadLong(B) ;
Close(Input);
SumLongTwo(A, B, C); Читать дальше >
Сравнение «длинных» чисел длины n
3 Декабрь
Сравнение «длинных» чисел длины n цифр А==В */
int Cmp(
const DIGIT A[ ], /* первое число */
const DIGIT B[ ], /* второе число */
int n) /* длина чисел */
{
int i;
for(i=n-1; (i>=0)&&(A[i]==B[i]); i–);
if (i<0) return 0;
if(A[i]>B[i]) return +1;
return -1;
}
Сложение длинных чисел
3 Декабрь
За операцию сложения отвечает процедура ADD
DIGIT Аdd(
DIGIT C[ ], // результат
const DIGIT A[ ], // первое слагаемое
const DIGIT B[ ], // второе слагаемое
int n) // длина слагаемых Читать дальше >
Умножение двумерного массива на число
3 Декабрь
Заполнение матрицы элементами, окаймляющими элемент Akl, определенным образом
3 Декабрь
Постановка задачи:
Матрицу А(m, n) заполнить следующим образом. Для заданных k и l элементу akl присвоить значение 1; элементам, окаймляющим его (соседним с ним по вертикали, горизонтали и диагоналям) – значение 2; элементам следующего окаймления – значение 3 и так далее до заполнения всей матрицы. Читать дальше >
Нахождение наибольшего общего делителя двух натуральных чисел
3 Декабрь
Постановка задачи:
Найти наибольший общий делитель (НОД) двух введенных натуральных чисел, используя алгоритм Евклида (алгоритм Евклида: вычитаем из большего меньшее до тех пор, пока они не сравняются, полученное в результате число и есть НОД).
Решение:
Наибольшим общим делителем (НОД) двух целых чисел называется такое наибольшее по модулю число, которое делит эти два числа. Так как натуральные числа это положительные целые числа, то при вводе двух чисел а и b должно проверяться условие, что они больше нуля. Читать дальше >