Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи. Пример решения.
Решены задачи: 1,2,4,6,12 Не решены: 3,5,7-11,13,14.
Задачи
С5.1. Даны натуральные числа х и у. Вычислить произведение x·y, используя лишь операцию сложения. Задачу решить двумя способами.
С5.2. Составить программу для расчета факториала натурального числа n (факториал числа n равен 1 ·2 · … · n ).
С5.3. В некоторых языках программирования (например, в C#) не предусмотрена операция возведения в степень. Составить программу для расчета степени n вещественного числа a (n — натуральное число).
С5.4. Дано пятизначное число. Найти число, получаемое при прочтении его цифр справа налево.
С5.5. Составить программу возведения натурального числа в квадрат, учитывая следующую закономерность:
12 = 1
22 = 1 + 3
32 = 1 + 3 + 5
42 = 1 + 3 + 5 + 7
…
n2 = 1 + 3 + 5 + 7 + 9 + … + (2n — 1) .
С5.6. Найти сумму 12 + 22 + 32 + … + 102. Операцию возведения в степень не использовать, а учесть особенности получения квадрата натурального числа, отмеченные в предыдущей задаче.
С5.7. Составить программу возведения натурального числа в третью степень, учитывая следующую закономерность:
13 = 1
23 = 3 + 5
33 = 7 + 9 + 11
43 = 13 + 15 + 17 + 19
53 = 21 + 23 + 25 + 27 + 29.
С5.8. Вычислить сумму 1! + 2! + 3! + … + n!, где k! = 1 · 2 · 3 …· k, и k = 1, 2, …, n. Значение n вводится с клавиатуры: 1 < n <= 10.
С5.9. Вычислить сумму 1 + 1/1! + 1/2! + 1/3! + … +1/n! , где k! = 1 · 2 · 3 · … · k, и k = 1, 2, …, n. Значение n вводится с клавиатуры: 1 < n <= 10.
С5.10. Вычислить сумму 1 + x/1! + x2/2! + x3/3! + … +xn/n! , где k! =1 · 2 · 3 · … · k, и k = 1, 2, …, n. Значение x и n вводится с клавиатуры: 1 < n <= 10.
С5.11. Дано натуральное число n. Вычислить сумму: 1/sin1 + 1/(sin1 + sin2) + … + 1/(sin1 + … + sin n);
С5.12. Дано шестизначное число. Найти сумму его цифр. Величины для хранения всех шести цифр числа не использовать.
С5.13. Дано натуральное число. Найти сумму его последних n цифр. Величины для хранения всех n последних цифр числа не использовать.
С5.14. Около стены наклонно стоит палка длиной 4,5 м. Один ее конец находится на расстоянии 3 м от стены. Нижний конец палки начинает скользить в плоскости, перпендикулярной стене. Определить значение угла между палкой и полом (в градусах) с момента начала скольжения до падения палки через каждые 0,2 м.
NEW: Наш Чат, в котором вы можете обсудить любые вопросы, идеи, поделиться опытом или связаться с администраторами.
//5.3
int x,y;
Console.Write(«рандомное число: «);
x = Convert.ToInt32(Console.ReadLine());
Console.Write(«ее степень: «);
y = Convert.ToInt32(Console.ReadLine());
int result=1;
for(int i = 0; i < y; i++)
{
result *= x;
}
Console.WriteLine($»{x} в {y} степени = {result}»);
//5.1
int x,y;
Console.Write(«Введите первый множитель: «);
x = Convert.ToInt32(Console.ReadLine());
Console.Write(«Введите второй множитель: «);
y = Convert.ToInt32(Console.ReadLine());
int umnozenie=0;
for(int i = 0; i < y; i++)
{
umnozenie += x;
}
Console.WriteLine($»{x} умножить на {y} = {umnozenie}»);
tasks 5.5, 5,6
int givenNumber = Convert.ToInt32(Console.ReadLine());
int NumberSquare = 0;
int summOfNumbersSquare = 0;
for (int i = 1; i <= givenNumber; i++)
{
NumberSquare += (2*i — 1);
summOfNumbersSquare += NumberSquare;
}
Console.WriteLine(NumberSquare);
Console.WriteLine(summOfNumbersSquare);
——————————————————————————-
task 5.13
int givenDigit = Convert.ToInt32(Console.ReadLine());
int lastNumbersToSum = Convert.ToInt32(Console.ReadLine());
int sumOfDigits = 0;
for (int i = 1; i <= lastNumbersToSum ; i ++)
{
sumOfDigits += givenDigit % 10;
givenDigit /= 10;
}
Console.WriteLine(sumOfDigits);
//задача 5.5
int number = int.Parse(Console.ReadLine());
int result = 0;
for (int i = 0 , j = 0 ; j < number; i++ , j++)
{
if(!(i % 10 ==0))
{
i++;
}
result += i+ 1;
}
Console.WriteLine(result);
//задача5.4
int fivenumbers = 65375;
string numb = null;
for (int i = 0; i < 5; i++)
{
int a = fivenumbers % 10;
fivenumbers /= 10;
numb += a;
}
int rebers = int.Parse(numb);
Console.WriteLine(rebers);
Console.ReadLine();
{
// С5.4.Дано пятизначное число. Найти число, получаемое при прочтении его цифр справа налево.
Console.WriteLine(«Vvedite пятизначное число a»);
int a = int.Parse(Console.ReadLine()); //пятизначное число a =12345
int destis = a / 10000;//12345/10000=1.—-
int tis = (a / 1000) % 10;//12345/1000=- 12%10 =2
int sot = (a / 100) % 10; //12345/100 = 123 %10 = 3
int des = (a % 100) / 10; //12345%100 = 45 /10 = 4
int ed = a % 10;//12345%10 = 5
Console.WriteLine(destis + » » + tis + » » + sot + » » + des + » » + ed);
Console.WriteLine(ed+»»+des + «» + sot + «» + tis + «» + destis);
}
//С5.3. В некоторых языках программирования (например, в C#) не предусмотрена операция возведения в степень.
//Составить программу для расчета степени n вещественного числа a (n — натуральное число).
Console.WriteLine(«Vvedite вещественноe chislo a»);
double a = double.Parse(Console.ReadLine()); //chislo a
double a2 = a;
Console.WriteLine(«Vvedite натуральное число a»);
int n = int.Parse(Console.ReadLine()); //stepenj n i max
for (int i = 1; i <= n ; i++)
{
a2 *= a;
Console.WriteLine(«chislo «+a+» v stepeni «+ i +» = «+a2);
}
// С5.2. Составить программу для расчета факториала натурального числа n (факториал числа n равен 1 ·2 · … · n ).
Console.WriteLine(«VVedite n»);
int n = int.Parse(Console.ReadLine()); //4
int n2 =n; // 4=4
int fakt = 1; //1
Console.WriteLine(«\n\n»);
for (int i = 1; i<=n ; i++) //1,2,3,4
{
fakt *= n2;
Console.WriteLine(fakt);
n2 = n2 — 1;
}
SASA II PIDOR
Сам иди нахуй
Олег idn naxu1
Я гей хочу пива.
Третья задача
C5. Цикл с параметром. Разные задачи
С5.3. В некоторых языках программирования (например, в C#) не предусмотрена операция возведения в степень. Составить программу для расчета степени n вещественного числа a (n — натуральное число).
public static class NumToPower
{
private static double result;
public static double GetPower(double number, int power)
{
if(number < 0)
{
return 0;
}
double[] array = new double[power];
array[0] = number;
for (int i = 1; i < power; i++)
{
array[i] = array[i-1] * number;
result = array[i];
}
return result;
}
}
static void Main(string[] args)
{
Console.WriteLine(NumToPower.GetPower(5, 8));
}
С5.7. Составить программу возведения натурального числа в третью степень, учитывая следующую закономерность:
class Power3
{
private int number;
private int NumInPow;
private int[] array;
public Power3(int number)
{
this.number = number;
array = new int[number];
NumInPow = (int)Math.Pow(number, 3);
array[0] = (int)Math.Pow(number, 2) — (number — 1);
for (int i = 1; i < array.Length; i++)
{
array[i] = array[i — 1] + 2;
}
}
public void GetPoewrNumbers()
{
Console.Write(NumInPow + » = «);
for (int i = 0; i < array.Length; i++)
{
Console.Write(array[i]);
if(i < array.Length — 1)
{
Console.Write(» + «);
}
}
}
static void Main(string[] args)
{
Power3 p = new Power3(4);
p.GetPoewrNumbers();
}
5.5
<pre>
static void Main(string[] agrs)
{
/*Составить программу возведения натурального числа в квадрат, учитывая следующую закономерность:
12 = 1
22 = 1 + 3
32 = 1 + 3 + 5
42 = 1 + 3 + 5 + 7
…
n2 = 1 + 3 + 5 + 7 + 9 + … +(2n — 1) .*/
Console.WriteLine(«enter n»);
int n = Convert.ToInt32(Console.ReadLine());
int c;
int z = 0;
Console.Write($»{n} = «);
for (int i = 1; i <= n; i++)
{
c = 2 * i — 1;
Console.Write($»{c}»);
z += c;
if(z/(n*n) != 1)
{
Console.Write(» + «);
}
}
Console.WriteLine($» = {n*n}»);
Console.ReadKey();
}
</pre>
С 5.2 Составить программу для расчета факториала натурального числа n (факториал числа n равен 1 ·2 · … · n ).
Никита, начало верное, но не закончено:
— вы выводите не конечный ответ, а все факториалы для чисел меньше
— вы выводите не верно — значения не будут соответствовать
С5.13. Дано натуральное число. Найти сумму его последних n цифр. Величины для хранения всех n последних цифр числа не использовать.
Алексей В, все верно.
Console.WriteLine(«Введите число a»);
int a=Convert.ToInt32(Console.ReadLine());
Console.WriteLine(«Введите степень»);
int n = Convert.ToInt32(Console.ReadLine());
int st = 1;
for (int i = 1; i<=n; i++)
{
st *= a;
}
Console.WriteLine("{0} в {2} степени равно {1}", a, st,n);
C5.2
{
int n = int.Parse(Console.ReadLine());
int f = 1;
for (int i = 1; i <= n; i++)
{
f *= i;
}
Console.WriteLine(f);
}
C5.3
{
int n = int.Parse(Console.ReadLine());
int s = int.Parse(Console.ReadLine());
int answer = 1;
for (int i = 0; i < s; i++)
{
answer *= n;
}
Console.WriteLine(answer);
}
C5.4
{
string[] revn;
revn = new string[5];
int n = int.Parse(Console.ReadLine());
int digit = 0;
for (int i = 0; i < 5; i++)
{
digit = n % 10;
revn[i] = Convert.ToString(digit);
n /= 10;
}
string reverseN = string.Join("", revn);
Console.WriteLine(reverseN);
}
С5.5.
Console.WriteLine(«Введите число!»);
int a = Convert.ToInt32(Console.ReadLine());
int q = 0;
for (int i = a*2-1; i > 0; i-=2)
{
q += i;
}
Console.WriteLine(q);
Console.ReadKey();
С5.7.
Console.WriteLine(«Введите число!»);
int a = Convert.ToInt32(Console.ReadLine());
int c = 0;
for (int i = 0; i < a; i++)
{
c += a * (a — 1) + 1 + i * 2;
}
Console.WriteLine(c);
Console.ReadKey();
C5.13 Решение:
using System;
namespace task2
{
class Program
{
static void Main(string[] args)
{
int num;
string answer;
string str;
string s;
int ss;
Console.WriteLine(«Введите число из которого хотите изьять сумму последних чисел.\n» +
«Введите random если хотите что бы система сама ввела рандомное число.»);
answer = Console.ReadLine();
if (answer == «random»)
{
Random random = new Random();
num = random.Next();
Console.WriteLine(«Выше число: » + num);
Console.Write(«Количество последних чисел: «);
int n = int.Parse(Console.ReadLine());
str = Convert.ToString(num);
int temp = str.Length;
int temp_summ = 0;
for (int i = n; i > 0; i—)
{
s = Convert.ToString(str[temp -= 1]);
ss = Convert.ToInt32(s);
temp_summ += ss;
}
Console.WriteLine($»Сумма последних {n} чисел: » + temp_summ);
}
else
{
bool result = int.TryParse(answer, out num);
if (result == true)
{
Console.WriteLine(«Выше число: «+ num);
Console.Write(«Количество последних чисел: «);
int n = int.Parse(Console.ReadLine());
str = Convert.ToString(num);
int temp = str.Length;
int temp_summ = 0;
for (int i = n; i > 0; i—)
{
s = Convert.ToString(str[temp -= 1]);
ss = Convert.ToInt32(s);
temp_summ += ss;
}
Console.WriteLine($»Сумма последних {n} чисел: «+ temp_summ);
}
else
{
Console.WriteLine(«Не удалось преобразовать в число»);
}
}
}
}
}
C15.14 Решение. На счет границы работы цикла i <= 7 я изначально поставил i <= A/0.2 но из-за 7 лишних строк "не число" в выводе на консоль я просто хардом ввел 7. А так вроде работает.
using System;
namespace task1
{
class Program
{
static void Main(string[] args)
{
// double degrees;
// double angle = Math.PI * degrees / 180.0; degrees = angle * 180 / Math.PI
// angle — радианы, degrees — градусы
// формула по расчету радиан если известен градус
double C = 4.5;
double A = 3;
double B = Math.Sqrt((C * C) — (A * A));
double sinB = B / C;
double angle_radians_B = Math.Asin(sinB);
double angle_degrees_B = angle_radians_B * 180 / Math.PI;
// нахождение изначального угла между полом и палкой до сдвига палки
double temp = A;
for (double i = 0; i <= 7; i++)
{
temp = temp + 0.2;
B = Math.Sqrt((C * C) — (temp * temp));
sinB = B / C;
angle_radians_B = Math.Asin(sinB);
angle_degrees_B = angle_radians_B * 180 / Math.PI;
Console.WriteLine(angle_degrees_B);
}
}
}
}
Вычислите значение s для данного n:
a) s = 1! — 2! + 3! — 4! + … + (-1)n+1n!;
b) s = -2! + 4! + … + (-1)n(2n)!.
Реализовать программу с использованием класса. Поможете решить?
Например, так:
С5.6. Найти сумму 1^2 + 2^2 + 3^2 + … + 10^2. Операцию возведения в степень не использовать, а учесть особенности получения квадрата натурального числа, отмеченные в предыдущей задаче.
Андрей! Именно так.
C5.4 решается так? — вывод выходит правильным
Даниил! Вывод числа в виде строки верный. A получить само число?
С 5.2 Составить программу для расчета факториала натурального числа n (факториал числа n равен 1 ·2 · … · n ).
Дмитрий! Про факториал смотрите здесь.
В Ваш вариант добавил ввод n. Но она не дает ошибок только при n = 2,3,4,5.
Например, 0!=1, 1!=1, 6!=720. Кажется, перемудрили с алгоритмом. По этой же ссылке смотрите наиболее простую реализацию:
С5.1. Даны натуральные числа х и у. Вычислить произведение x·y, используя лишь операцию сложения. Задачу решить двумя способами.
Первый вариант решения задачи 5.1:
using System;
// с вариантом через рекурсию
namespace ConsoleApp13
{
class Program
{
static void Main(string[] args)
{
Console.Write(«Введите значение x: «);
int x = Int32.Parse(Console.ReadLine());
Console.Write(«Введите значение y: «);
int y = Int32.Parse(Console.ReadLine());
int z = 0;
for (int i = 0; i < y; i++)
{
z += x;
}
Console.WriteLine($"Результат умножения через функцию: {z}");
int g = multiplication(x, y);
Console.WriteLine($"Результат умножения через рекурсию: {g}");
}
static int multiplication(int x, int y)
{
if (x == 0 || y == 0)
{
return 0;
}
else
{
return x + multiplication(x, y — 1);
}
}
}
}
Задача C5.12. Пример решения