Процедуры с числовыми параметрами
Proc1. Описать процедуру PowerA3(A, B), вычисляющую третью степень числа A и возвращающую ее в переменной B (A — входной, B — выходной параметр; оба параметра являются вещественными). С помощью этой процедуры найти третьи степени пяти данных чисел.
Решение задачи, на языке: Паскаль, C
Proc2. Описать процедуру PowerA234(A, B, C, D), вычисляющую вторую, третью и четвертую степень числа A и возвращающую эти степени соответственно в переменных B, C и D (A — входной, B, C, D — выходные параметры; все параметры являются вещественными). С помощью этой процедуры найти вторую, третью и четвертую степень пяти данных чисел.
Решение задачи, на языке: Паскаль, C
Proc3. Описать процедуру Mean(X, Y, AMean, GMean), вычисляющую среднее арифметическое AMean=(X+Y)/2 и среднее геометрическое GMean=√X∗Y двух положительных чисел X и Y (X и Y — входные, AMean и GMean — выходные параметры вещественного типа). С помощью этой процедуры найти среднее арифметическое и среднее геометрическое для пар (A,B),(A,C),(A,D), если даны A,B,C,D.
Решение задачи, на языке: Паскаль, C, Phyton3
Proc4. Описать процедуру TrianglePS(a, P, S), вычисляющую по стороне a равностороннего треугольника его периметр P=3∗a и площадь S=a2∗√3/4 (a — входной, P и S — выходные параметры; все параметры являются вещественными). С помощью этой процедуры найти периметры и площади трех равносторонних треугольников с данными сторонами.
Решение задачи, на языке: Паскаль, C, Кумир
Proc5. Описать процедуру RectPS(x1, y1, x2, y2, P, S), вычисляющую периметр P и площадь S прямоугольника со сторонами, параллельными осям координат, по координатам (x1,y1),(x2,y2) его противоположных вершин (x1, y1, x2, y2 — входные, P и S — выходные параметры вещественного типа). С помощью этой процедуры найти периметры и площади трех прямоугольников с данными противоположными вершинами.
Решение задачи, на языке: Паскаль, C, C++
Proc6. Описать процедуру DigitCountSum(K, C, S), находящую количество C цифр целого положительного числа K, а также их сумму S (K — входной, C и S — выходные параметры целого типа). С помощью этой процедуры найти количество и сумму цифр для каждого из пяти данных целых чисел.
Решение задачи, на языке: Паскаль, C, Кумир
Proc7. Описать процедуру InvertDigits(K), меняющую порядок следования цифр целого положительного числа K на обратный (K — параметр целого типа, являющийся одновременно входным и выходным). С помощью этой процедуры поменять порядок следования цифр на обратный для каждого из пяти данных целых чисел.
Решение задачи, на языке: Паскаль, C, Кумир, Phyton3
Proc8. Описать процедуру AddRightDigit(D, K), добавляющую к целому положительному числу K справа цифру D (D — входной параметр целого типа, лежащий в диапазоне 0-9, K — параметр целого типа, являющийся одновременно входным и выходным). С помощью этой процедуры последовательно добавить к данному числу K справа данные цифры D1 и D2, выводя результат каждого добавления.
Решение задачи, на языке: Паскаль, C, C++
Proc9. Описать процедуру AddLeftDigit(D, K), добавляющую к целому положительному числу K слева цифру D (D — входной параметр целого типа, лежащий в диапазоне 1-9, K — параметр целого типа, являющийся одновременно входным и выходным). С помощью этой процедуры последовательно добавить к данному числу K слева данные цифры D1 и D2, выводя результат каждого добавления.
Решение задачи, на языке: Паскаль, C, Кумир
Proc10. Описать процедуру Swap(X, Y), меняющую содержимое переменных X и Y (X и Y — вещественные параметры, являющиеся одновременно входными и выходными). С ее помощью для данных переменных A, B, C, D последовательно поменять содержимое следующих пар: A и B, C и D, B и C и вывести новые значения A, B, C, D.
Решение задачи, на языке: Паскаль, C
Proc11. Описать процедуру Minmax(X, Y), записывающую в переменную X минимальное из значений X и Y, а в переменную Y — максимальное из этих значений (X и Y — вещественные параметры, являющиеся одновременно входными и выходными). Используя четыре вызова этой процедуры, найти минимальное и максимальное из данных чисел A, B, C, D.
Решение задачи, на языке: Паскаль, C
Proc12. Описать процедуру SortInc3(A, B, C), меняющую содержимое переменных A, B, C таким образом, чтобы их значения оказались упорядоченными по возрастанию (A, B, C — вещественные параметры, являющиеся одновременно входными и выходными). С помощью этой процедуры упорядочить по возрастанию два данных набора из трех чисел: (A1, B1, C1) и (A2, B2, C2).
Решение задачи, на языке: Паскаль, C, C++
Proc13. Описать процедуру SortDec3(A, B, C), меняющую содержимое переменных A, B, C таким образом, чтобы их значения оказались упорядоченными по убыванию (A, B, C — вещественные параметры, являющиеся одновременно входными и выходными). С помощью этой процедуры упорядочить по убыванию два данных набора из трех чисел: (A1, B1, C1) и (A2, B2, C2).
Решение задачи, на языке: Паскаль, C, Phyton3
Proc14. Описать процедуру ShiftRight3(A, B, C), выполняющую правый циклический сдвиг: значение A переходит в B, значение B — в C, значение C — в A (A, B, C — вещественные параметры, являющиеся одновременно входными и выходными). С помощью этой процедуры выполнить правый циклический сдвиг для двух данных наборов из трех чисел: (A1, B1, C1) и (A2, B2, C2).
Решение задачи, на языке: Паскаль, C, Кумир
Proc15. Описать процедуру ShiftLeft3(A, B, C), выполняющую левый циклический сдвиг: значение A переходит в C, значение C — в B, значение B — в A (A, B, C — вещественные параметры, являющиеся одновременно входными и выходными). С помощью этой процедуры выполнить левый циклический сдвиг для двух данных наборов из трех чисел: (A1, B1, C1) и (A2, B2, C2).
Решение задачи, на языке: Паскаль, C, Кумир
Функции с числовыми параметрами
Proc16. Описать функцию Sign(X) целого типа, возвращающую для вещественного числа X следующие значения: -1, если X<0; 0, если X=0; 1, если X>0. С помощью этой функции найти значение выражения Sign(A) + Sign(B) для данных вещественных чисел A и B.
Решение задачи, на языке: Паскаль, C, Кумир
Proc17. Описать функцию RootsCount(A, B, C) целого типа, определяющую количество корней квадратного уравнения A∗x2+B∗x+C=0 (A, B, C — вещественные параметры, A≠0). С ее помощью найти количество корней для каждого из трех квадратных уравнений с данными коэффициентами. Количество корней определять по значению дискриминанта: D=B2—4∗A∗C.
Решение задачи, на языке: Паскаль, C, C++, Phyton3
Proc18. Описать функцию CircleS(R) вещественного типа, находящую площадь круга радиуса R (R — вещественное). С помощью этой функции найти площади трех кругов с данными радиусами. Площадь круга радиуса R вычисляется по формуле S=π∗R2. В качестве значения π использовать 3.14.
Решение задачи, на языке: Паскаль, C, Phyton3
Proc19. Описать функцию RingS(R1, R2) вещественного типа, находящую площадь кольца, заключенного между двумя окружностями с общим центром и радиусами R1 и R2 (R1 и R2 — вещественные, R1>R2). С ее помощью найти площади трех колец, для которых даны внешние и внутренние радиусы. Воспользоваться формулой площади круга радиуса R: S=π∗R2. В качестве значения π использовать 3.14.
Решение задачи, на языке: Паскаль, C
Proc20. Описать функцию TriangleP(a, h), находящую периметр равнобедренного треугольника по его основанию a и высоте h, проведенной к основанию (a и h — вещественные). С помощью этой функции найти периметры трех треугольников, для которых даны основания и высоты. Для нахождения боковой стороны b треугольника использовать теорему Пифагора: b2=(a/2)2+h2.
Решение задачи, на языке: Паскаль, C
Proc21. Описать функцию SumRange(A, B) целого типа, находящую сумму всех целых чисел от A до B включительно (A и B — целые). Если A>B, то функция возвращает 0. С помощью этой функции найти суммы чисел от A до B и от B до C, если даны числа A,B,C.
Решение задачи, на языке: Паскаль, C, Кумир
Proc22. Описать функцию Calc(A, B, Op) вещественного типа, выполняющую над ненулевыми вещественными числами A и B одну из арифметических операций и возвращающую ее результат. Вид операции определяется целым параметром Op: 1 — вычитание, 2 — умножение, 3 — деление, остальные значения — сложение. С помощью Calc выполнить для данных A и B операции, определяемые данными целыми N1, N2, N3.
Решение задачи, на языке: Паскаль, C, Phyton3
Proc23. Описать функцию Quarter(x, y) целого типа, определяющую номер координатной четверти, в которой находится точка с ненулевыми вещественными координатами (x, y). С помощью этой функции найти номера координатных четвертей для трех точек с данными ненулевыми координатами.
Решение задачи, на языке: Паскаль, C
Proc24. Описать функцию Even(K) логического типа, возвращающую True, если целый параметр K является четным, и False в противном случае. С ее помощью найти количество четных чисел в наборе из 10 целых чисел.
Решение задачи, на языке: Паскаль, C
Proc25. Описать функцию IsSquare(K) логического типа, возвращающую True, если целый параметр K (>0) является квадратом некоторого целого числа, и False в противном случае. С ее помощью найти количество квадратов в наборе из 10 целых положительных чисел.
Решение задачи, на языке: Паскаль, C, С++
Proc26. Описать функцию IsPower5(K) логического типа, возвращающую True, если целый параметр K (>0) является степенью числа 5, и False в противном случае. С ее помощью найти количество степеней числа 5 в наборе из 10 целых положительных чисел.
Решение задачи, на языке: Паскаль, C, С++, Кумир
Proc27. Описать функцию IsPowerN(K, N) логического типа, возвращающую True, если целый параметр K (>0) является степенью числа N (>1), и False в противном случае. Дано число N (>1) и набор из 10 целых положительных чисел. С помощью функции IsPowerN найти количество степеней числа N в данном наборе.
Решение задачи, на языке: Паскаль, C
Proc28. Описать функцию IsPrime(N) логического типа, возвращающую True, если целый параметр N (>1) является простым числом, и False в противном случае (число, большее 1, называется простым, если оно не имеет положительных делителей, кроме 1 и самого себя). Дан набор из 10 целых чисел, больших 1. С помощью функции IsPrime найти количество простых чисел в данном наборе.
Решение задачи, на языке: Паскаль, C, Phyton3
Proc29. Описать функцию DigitCount(K) целого типа, находящую количество цифр целого положительного числа K. Используя эту функцию, найти количество цифр для каждого из пяти данных целых положительных чисел.
Решение задачи, на языке: Паскаль, C, Кумир
Proc30. Описать функцию DigitN(K, N) целого типа, возвращающую N-ю цифру целого положительного числа K (цифры в числе нумеруются справа налево). Если количество цифр в числе K меньше N, то функция возвращает -1. Для каждого из пяти данных целых положительных чисел K1,K2,…,K5 вызвать функцию DigitN с параметром N, изменяющимся от 1 до 5.
Решение задачи, на языке: Паскаль, C, Кумир
Proc31. Описать функцию IsPalindrom(K), возвращающую True, если целый параметр K (>0) является палиндромом (то есть его запись читается одинаково слева направо и справа налево), и False в противном случае. С ее помощью найти количество палиндромов в наборе из 10 целых положительных чисел. При описании функции можно использовать функции DigitCount и DigitN из заданий Proc29 и Proc30.
Решение задачи, на языке: Паскаль, C, C++, Кумир
Proc32. Описать функцию DegToRad(D) вещественного типа, находящую величину угла в радианах, если дана его величина D в градусах (D — вещественное число, 0<D<360). Воспользоваться следующим соотношением: 180o=π радианов. В качестве значения π использовать 3.14. С помощью функции DegToRad перевести из градусов в радианы пять данных углов.
Решение задачи, на языке: Паскаль, C, Phyton3
Proc33. Описать функцию RadToDeg(R) вещественного типа, находящую величину угла в градусах, если дана его величина R в радианах (R — вещественное число, 0<R<2∗π). Воспользоваться следующим соотношением: 180o=π радианов. В качестве значения ? использовать 3.14. С помощью функции RadToDeg перевести из радианов в градусы пять данных углов.
Решение задачи, на языке: Паскаль, C
Proc34. Описать функцию Fact(N) вещественного типа, вычисляющую значение факториала N!=1∗2∗…∗N (N>0 — параметр целого типа; вещественное возвращаемое значение используется для того, чтобы избежать целочисленного переполнения при больших значениях N). С помощью этой функции найти факториалы пяти данных целых чисел.
Решение задачи, на языке: Паскаль, C
Proc35. Описать функцию Fact2(N) вещественного типа, вычисляющую двойной факториал: N!!=1∗3∗5∗…∗N, если N — нечетное; N!!=2∗4∗6∗…∗N, если N — четное (N>0 — параметр целого типа; вещественное возвращаемое значение используется для того, чтобы избежать целочисленного переполнения при больших значениях N). С помощью этой функции найти двойные факториалы пяти данных целых чисел.
Решение задачи, на языке: Паскаль, C
Proc36. Описать функцию Fib(N) целого типа, вычисляющую N-й элемент последовательности чисел Фибоначчи FK, которая описывается следующими формулами: F1=1,F2=1,FK=FK−2+FK−1,K=3,4,… . Используя функцию Fib, найти пять чисел Фибоначчи с данными номерами N1,N2,…,N5.
Решение задачи, на языке: Паскаль, C
Дополнительные задания на процедуры и функции
Proc37. Описать функцию Power1(A, B) вещественного типа, находящую величину AB по формуле AB=exp(B∗ln(A)) (параметры A и B — вещественные). В случае нулевого или отрицательного параметра A функция возвращает 0. С помощью этой функции найти степени AP, BP, CP, если даны числа P,A,B,C.
Решение задачи, на языке: Паскаль, C
Proc38. Описать функцию Power2(A, N) вещественного типа, находящую величину AN (A — вещественный, N — целый параметр) по следующим формулам: A0=1;AN=A∗A∗…∗A (N сомножителей), если N>0; AN=1/(A∗A∗…∗A)(|N| сомножителей), если N<0. С помощью этой функции найти AK,AL,AM, если даны числа A,K,L,M.
Решение задачи, на языке: Паскаль, C
Proc39. Используя функции Power1 и Power2 (задания Proc37 и Proc38), описать функцию Power3(A, B) вещественного типа с вещественными параметрами, находящую AB следующим образом: если B имеет нулевую дробную часть, то вызывается функция Power2(A, Round(B)); в противном случае вызывается функция Power1(A, B). С помощью этой функции найти AP,BP,CP, если даны числа P,A,B,C.
Решение задачи, на языке: Паскаль, C
Proc40. Описать функцию Exp1(x, ϵ) вещественного типа (параметры x, ϵ — вещественные, ϵ>0), находящую приближенное значение функции exp(x): exp(x)=1+x+x2/(2!)+x3/(3!)+…+xn/(n!)+…(n!=1∗2∗…∗n). В сумме учитывать все слагаемые, большие ϵ. С помощью Exp1 найти приближенное значение экспоненты для данного x при шести данных ϵ.
Решение задачи, на языке: Паскаль, C
Proc41. Описать функцию Sin1(x, ϵ) вещественного типа (параметры x, ϵ — вещественные, ϵ>0), находящую приближенное значение функции sin(x): sin(x)=x—x3/(3!)+x5/(5!)—…+(−1)n∗x2∗n+1/((2∗n+1)!)+… . В сумме учитывать все слагаемые, модуль которых больше ϵ. С помощью Sin1 найти приближенное значение синуса для данного x при шести данных ϵ.
Решение задачи, на языке: Паскаль, C, Кумир
Proc42. Описать функцию Cos1(x, ϵ) вещественного типа (параметры x, ϵ — вещественные, ϵ>0), находящую приближенное значение функции cos(x): cos(x)=1—x2/(2!)+x4/(4!)—…+(−1)n∗x2∗n/((2∗n)!)+… . В сумме учитывать все слагаемые, модуль которых больше ?. С помощью Cos1 найти приближенное значение косинуса для данного x при шести данных ϵ.
Решение задачи, на языке: Паскаль, C, Кумир
Proc43. Описать функцию Ln1(x, ϵ) вещественного типа (параметры x, ϵ — вещественные, |x|<1,ϵ>0), находящую приближенное значение функции ln(1+x): ln(1+x)=x—x2/2+x3/3—…+(−1)n∗xn+1/(n+1)+… . В сумме учитывать все слагаемые, модуль которых больше ϵ. С помощью Ln1 найти приближенное значение ln(1+x) для данного x при шести данных ϵ.
Решение задачи, на языке:Паскаль, C
Proc44. Описать функцию Arctg1(x, ϵ) вещественного типа (параметры x, ϵ — вещественные, |x|<1,ϵ>0), находящую приближенное значение функции arctg(x): arctg(x)=x—x3/3+x5/5—…+(−1)n∗x2∗n+1/(2∗n+1)+… . В сумме учитывать все слагаемые, модуль которых больше ϵ. С помощью Arctg1 найти приближенное значение arctg(x) для данного x при шести данных ϵ.
Решение задачи, на языке: Паскаль, C, C++, Кумир
Proc45. Описать функцию Power4(x, a, ϵ) вещественного типа (параметры x, a, ϵ — вещественные, |x|<1;a,ϵ>0), находящую приближенное значение функции (1+x)a: (1+x)a=1+a∗x+a∗(a−1)∗x2/(2!)+…+a∗(a−1)∗…∗(a−n+1)∗xn/(n!)+….
В сумме учитывать все слагаемые, модуль которых больше ϵ. С помощью Power4 найти приближенное значение (1+x)a для данных x и a при шести данных ϵ.
Решение задачи, на языке: Паскаль, C
Proc46. Описать функцию NOD2(A, B) целого типа, находящую наибольший общий делитель (НОД) двух целых положительных чисел A и B, используя алгоритм Евклида: НОД(A, B) = НОД(B, AmodB), если B≠0; НОД(A, 0) = A. С помощью этой функции найти наибольшие общие делители пар (A,B),(A,C),(A,D), если даны числа A,B,C,D.
Решение задачи, на языке: Паскаль, C
Proc47. Используя функцию NOD2 из задания Proc46, описать процедуру Frac1(a, b, p, q), преобразующую дробь a/b к несократимому виду p/q (все параметры процедуры — целого типа, a и b — входные, p и q — выходные). Знак результирующей дроби p/q приписывается числителю (то есть q>0). С помощью Frac1 найти несократимые дроби, равные a/b+c/d,a/b+e/f,a/b+g/h (числа a,b,c,d,e,f,g,h даны).
Решение задачи, на языке: Паскаль, C
Proc48. Учитывая, что наименьшее общее кратное двух целых положительных чисел A и B равно A*(B/НОД(A, B)), где НОД(A, B) — наибольший общий делитель A и B, и используя функцию NOD2 из задания Proc46, описать функцию NOK2(A, B) целого типа, находящую наименьшее общее кратное чисел A и B. С помощью NOK2 найти наименьшие общие кратные пар (A, B), (A, C), (A, D), если даны числа A, B, C, D.
Решение задачи, на языке: Паскаль, C
Если вы хотите выложить решение для задач, но нет решения на нужном языке, или вообще к задаче нет решений. Можете разместить его в виде комментария к данной статье.
Другие задачи по программированию, для проверки своих знаний.
//Proc26
import java.util.Scanner;
class Home16 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println(«Введите К»);
int k;
int t1 = 0, t2 = 0;
for (int i = 1; i <= 10; i++) {
k = scan.nextInt();
System.out.println(" четное " + IsSquare(k));
System.out.println();
if (k % 5 == 0) {
t1++;
}
}
}
public static float IsSquare (int b){
double res = b;
for (int i = 1; i < b; i++){
if ( Math.pow(i,5) == b){
}
}