A3. Целочисленная арифметика. Нахождение целого числа по информации о его цифрах

Напишите в комментарии к этой записи консольные приложения для решения этих задач, указав код задачи.
Решены задачи: 1,2,4,8,9 Не решены: 3,5-7. Есть варианты решений с обсуждениями.

Задачи

A3.1. Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа x, то получилось число 237. Найти число x.

A3.2. Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа x, то получилось число n. Найти число x. Значение n вводится с клавиатуры, 100 ≤ n ≤ 999 и при этом число десятков в n не равно нулю.

A3.3. В трехзначном числе x зачеркнули первую цифру. Когда оставшееся число умножили на 10, а произведение сложили с первой цифрой числа x, то получилось число 564. Найти число x.

A3.4. В трехзначном числе x зачеркнули первую цифру. Когда полученное число умножили на 10, а произведение сложили с первой цифрой числа x, то получилось число n. По заданному n найти число x (значение n вводится с клавиатуры, 1 ≤ n ≤ 999).

A3.5. В трехзначном числе x зачеркнули его вторую цифру. Когда к образованному при этом двузначному числу слева приписали вторую цифру числа x, то получилось число 546. Найти число x.

A3.6. В трехзначном числе x зачеркнули его вторую цифру. Когда к образованному при этом двузначному числу слева приписали вторую цифру числа x, то получилось число n. По заданному n найти число x (значение n вводится с клавиатуры, 10 ≤ n ≤ 999 и при этом число десятков в n не равно нулю).

A3.7. В трехзначном числе x зачеркнули его вторую цифру. Когда к образованному при этом двузначному числу справа приписали вторую цифру числа x, то получилось число 456. Найти число x.

A3.8. В трехзначном числе x зачеркнули его вторую цифру. Когда к образованному при этом двузначному числу справа приписали вторую цифру числа x, то получилось число n. По заданному n найти число x (значение n вводится с клавиатуры, 100 ≤ n ≤ 999).

A3.9. В трехзначном числе x зачеркнули его последнюю цифру. Когда в оставшемся двузначном числе переставили цифры, а затем приписали к ним слева последнюю цифру числа x, то получилось число 654. Найти число x.

A3.10. В трехзначном числе x зачеркнули его последнюю цифру. Когда в оставшемся двузначном числе переставили цифры, а затем приписали к ним слева последнюю цифру числа x, то получилось число n. По заданному n найти число x (значение n вводится с клавиатуры, 1 ≤ n ≤ 999 и при этом число единиц в n не равно нулю).


NEW: Наш Чат, в котором вы можете обсудить любые вопросы, идеи, поделиться опытом или связаться с администраторами.


Понравилась статья? Поделиться с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
34 комментариев
Новые
Старые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

3/5
Random rand = new Random();
int x = rand.Next(100, 1000);
Console.WriteLine(x);
char[] chars = x.ToString().ToCharArray();
(chars[0], chars[1]) = (chars[1], chars[0]);
x = int.Parse(new string(chars));
Console.WriteLine(x);

3/3
double q = 4; // Если вычеркнули первую цифру, потом умножили на десять, значит в конце произведения всегда будет 0, а значит первая цифра числа х — 4
double q1 = 56; // Именно это число получилось после удаления 1 цифры и это число умножали на 10
Console.WriteLine($Число x = «{q}{q1}»);
Console.ReadKey();
Все гениальное — просто)

Последний раз редактировалось 1 год назад Егорчик) ем

Нужно написать программу которая сама вычислит число. А не просто написать свои рассуждения, а программе дать вывести ответ который ты нашёл)

Последний раз редактировалось 15 дней назад Lex ем

A3.10{
           // В трехзначном числе x зачеркнули его последнюю цифру. Когда в оставшемся
           // двузначном числе переставили цифры, а затем приписали к ним слева последнюю цифру числа x, то получилось число n.
           // По заданному n найти число x (значение n вводится с клавиатуры, 1 ≤ n ≤ 999 и при этом число единиц в n не равно нулю).

           int n = Convert.ToInt32(Console.ReadLine());//851
           int v = n % 100 / 10;//5
           int x;//158

           if (1 <= n && n <= 999 && v != 0)
           {
               Console.WriteLine(«Correct number n»);
           }
           else
           {
               Console.WriteLine(«Incorrect n»);
           }

           x = ((n % 100 / 10)*10) + (n / 100) + ((n % 10)*100); // 50+8+100
           Console.WriteLine(x);//158

       }

A3.9.{
           //  В трехзначном числе x зачеркнули его последнюю цифру. Когда в оставшемся двузначном числе переставили цифры,
           //  а затем приписали к ним слева последнюю цифру числа x, то получилось число 654. Найти число x.

           int n = 654;
           int x;

           x = ((n % 100 / 10)*10) + (n / 100) + ((n % 10)*100); // 50+6+400
           Console.WriteLine(x);

       }

Последний раз редактировалось 1 год назад Angelina ем

A3.6. {
           // В трехзначном числе x зачеркнули его вторую цифру. Когда к образованному при этом двузначному
           // числу слева приписали вторую цифру числа x, то получилось число n.
           int n = Convert.ToInt32(Console.ReadLine());//327
           int v = n % 100 / 10;//2
           int x;

           if (10 <= n && n <= 999 && v != 0)
           {
               Console.WriteLine(«Correct number n»);
           }

           else
           {
               Console.WriteLine(«Incorrect n»);
           }

           x = ((n % 100 / 10) * 100) + ((n / 100) * 10 )+ (n % 10); // 200+30+7
           Console.WriteLine(x);

       }

A3.3.// В трехзначном числе x зачеркнули первую цифру. Когда оставшееся число умножили на 10,
       // а произведение сложили с первой цифрой числа x, то получилось число 564. Найти число x.
       {
           int n = 564;

           int x;

           Console.WriteLine(n);

           x = n / 10 + (n%10)*100;
           Console.WriteLine(x);
       }

A3.2// Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа x,
       // то получилось число n. Найти число x. Значение n вводится с клавиатуры, 100 ≤ n ≤ 999 и при этом число десятков в n не равно нулю.
       {
           int n = Convert.ToInt32(Console.ReadLine());
           int v = n % 100 / 10;
           int x;

           if (100 <= n && n <= 999 && v != 0)
           {
               Console.WriteLine(«Correct number n»);
           }

           else
           {
               Console.WriteLine(«Incorrect n»);
           }

           Console.WriteLine(n);

           x = n / 100 + (n % 100) * 10;
           Console.WriteLine(x);
       }

Ну хз, как по мне многие и тупо в уме можно решить.

A3.5. В трехзначном числе x зачеркнули его вторую цифру. Когда к образованному при этом двузначному числу слева приписали вторую цифру числа x, то получилось число 546. Найти число x.

int startNumber = 546;

int midNumber = startNumber / 100;//5
int leftNumber = (((startNumber % 100) - (startNumber - (startNumber / 10 * 10)))/ 10); //4
int rightNumber = (startNumber - (startNumber / 10 * 10));//6
int endnumber = leftNumber * 100 + midNumber * 10 + rightNumber;
Console.WriteLine(endnumber);
Последний раз редактировалось 2 лет назад Рафаиль ем

/*A3.2. Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10,
* а к частному слева приписали последнюю цифру числа x, то получилось число n. Найти число x.
* Значение n вводится с клавиатуры, 100 ≤ n ≤ 999 и при этом число десятков в n не равно нулю.
*
*/
int n = int.Parse(Console.ReadLine());

int s = n % 10;//последнее число
int s1 = n / 10;//десятки число

if (100 <= n && n <= 999&&s1!=0&&s!=0)
{
int x = s * 100 + s1;
Console.WriteLine(x);
}
else
{
Console.WriteLine("не подходит под условие это числи должно быть больше 100 и меньше 999 а десятки и еденицы больше 0 ");
}

/*A3.2. Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10,
* а к частному слева приписали последнюю цифру числа x, то получилось число n. Найти число x.
* Значение n вводится с клавиатуры, 100 ≤ n ≤ 999 и при этом число десятков в n не равно нулю.
*
*/
int n = int.Parse(Console.ReadLine());//условно 231 до этого было 123

int s = n % 10;//последнее число
int s1 = n / 10;//десятки число

if (100 <= n && n <= 999&&s1!=0&&s!=0)
{
int x = s * 100 + s1;
Console.WriteLine(x);
}
else
{
Console.WriteLine("не подходит под условие это число должно быть больше 100 и меньше 999 а десятки и еденицы больше 0 ");
}

/*A3.2. Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10,
* а к частному слева приписали последнюю цифру числа x, то получилось число n. Найти число x.
* Значение n вводится с клавиатуры, 100 ≤ n ≤ 999 и при этом число десятков в n не равно нулю.
*
*/
int n = int.Parse(Console.ReadLine());//условно 231 до этого было 123

int s = n % 10;//последнее число
int s1 = n / 10;//десятки число

if (100 <= n && n <= 999&&s1!=0&&s!=0)
{
int x = s * 100 + s1;
Console.WriteLine(x);
}
else
{
Console.WriteLine("не подходит под условие это числи должно быть больше 100 и меньше 999 а десятки и еденицы больше 0 ");
}

Console.WriteLine(«#1»);
Console.WriteLine(«Найти число x! «);
int n = 237;
int t = n / 100;
n %= 100;
n *= 10;
int x = n + t;
Console.WriteLine(«Число х = » + x);

Console.WriteLine(«#2»);
Console.WriteLine(«Найти число x!»);
Console.Write(«Введите трехзначное число n и при этом число десятков в n не равно нулю: «);
int n = Convert.ToInt32(Console.ReadLine());
int d = n / 10 % 10;
if (n >= 100 & n = 100 & n = 100 & n = 100 & n = 100 & n <= 999 & ed != 0)
{
int e = n / 100;
int d = n % 100 / 10;
int s = n % 10;
int sum = s * 100 + d * 10 + e;
Console.WriteLine($"X = {sum}");
}
else
{
Console.WriteLine("Число не трехзгачное!");
}

A3.1. Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа x, то получилось число 237. Найти число x.int y = 237;
int x = y * 10 — y / 100 * 999;
Console.WriteLine(«x = » + x);

Спасибо за интересные задачи!

{ // 3.1, 3.2
int x, n;
Console.WriteLine(237);
x = 237 / 100 + (237 % 100) * 10;
Console.WriteLine(x);
Console.WriteLine(«Введите трёхзначное число»);
n = Convert.ToInt32(Console.ReadLine());
while ((n 999) | (n / 10 % 10 == 0))
{
Console.WriteLine(«Введите другое число»);
n = Convert.ToInt32(Console.ReadLine());
}
x = n / 100 + (n % 100) * 10;
Console.WriteLine(x);
// 3.3, 3.4
Console.WriteLine();
Console.WriteLine(564);
x = (564 % 10) * 100 + 564 / 10;
Console.WriteLine(x);
Console.WriteLine(«Введите трёхзначное число»);
n = Convert.ToInt32(Console.ReadLine());
while ((n 999))
{
Console.WriteLine(«Введите другое число»);
n = Convert.ToInt32(Console.ReadLine());
}
x = (n % 10) * 100 + n / 10;
Console.WriteLine(x);
Console.ReadKey();
// 3.5, 3.6
Console.WriteLine(546);
x = 546 / 100 * 10 + 546 / 10 % 10 * 100 + 546 % 10;
Console.WriteLine(x);
Console.WriteLine(«Введите трёхзначное число»);
n = Convert.ToInt32(Console.ReadLine());
while ((n 999))
{
Console.WriteLine(«Введите другое число»);
n = Convert.ToInt32(Console.ReadLine());
}
x = n / 100 * 10 + n / 10 % 10 * 100 + n % 10;
Console.WriteLine(x);
// 3.7, 3.8
Console.WriteLine();
Console.WriteLine(456);
int a = 654 / 100, b = 654 % 10;
x = 456 % 10 * 10 + 456 / 10 % 10 + 456 / 100 * 100;
Console.WriteLine(x);
Console.WriteLine(«Введите трёхзначное число»);
n = Convert.ToInt32(Console.ReadLine());
while ((n 999))
{
Console.WriteLine(«Введите другое число»);
n = Convert.ToInt32(Console.ReadLine());
}
x = n % 10 * 10 + n / 10 % 10 + n / 100 * 100;
Console.WriteLine(x);
// 3.9, 3.10
Console.WriteLine();
Console.WriteLine(654);
int a = 654 / 100, b = 654 % 10;
x = 654 — a * 99 + b * 99;
Console.WriteLine(x);
Console.WriteLine(«Введите трёхзначное число»);
n = Convert.ToInt32(Console.ReadLine());
while ((n 999) | n % 10 == 0)
{
Console.WriteLine(«Введите другое число»);
n = Convert.ToInt32(Console.ReadLine());
}
a = n / 100;
b = n % 10;
x = n — a * 99 + b * 99;
Console.WriteLine(x);
Console.ReadKey();

Ты мог нормально сделать разделения между заданиями? Я просто копирую и вставляю и всё, потому что не понимаю ничего. А у тебя в одном коде 2 задания и разные ошибки появляются и приходится думать: «А что же тут удалить или добавить…?»
А? Мог бы сделать?

A3.7. В трехзначном числе x зачеркнули его вторую цифру. Когда к образованному при этом двузначному числу справа приписали вторую цифру числа x, то получилось число 456. Найти число x.

const int Ten = 10, Hun = 100;
int x, result = 456, firstNum=result/Hun, lastNum=result%Ten, secNum=(result/10)%10;
x = firstNum * Hun + lastNum * Ten + secNum;
Console.WriteLine(x);

A3.5.В трехзначном числе x зачеркнули его вторую цифру. Когда к образованному при этом двузначному числу слева приписали вторую цифру числа x, то получилось число 546.Найти число x.

const int Hun = 100, Ten = 10;
int x, result = 546, firstNumber = result / Hun, withOutLast = result / Ten,
lastNumeral = result % Ten, secondNumber = withOutLast % Ten;
x = secondNumber * Hun + (firstNumber * Ten + lastNumeral);
Console.WriteLine(x); 

A3.6.В трехзначном числе x зачеркнули его вторую цифру. Когда к образованному при этом двузначному числу слева приписали вторую цифру числа x, то получилось число n. По заданному n найти число x(значение n вводится с клавиатуры, 10 ≤ n ≤ 999 и при этом число десятков в n не равно нулю).

const int Hun = 100, Ten = 10;
int n6 = Convert.ToInt32(Console.ReadLine()), x6 = 0;
if ((n6 >= 10) && (n6 <= 999) && (n6 % 100 / 10 != 0))
{
   int firstNumeral = n6 / Hun, lastNumer = n6 % Ten, secondNum = n6 / Ten % Ten;
   x6 = secondNum * Hun + firstNumeral * Ten + lastNumer;
}
Console.WriteLine(x6);

A3.1.Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа x, то получилось число 237.Найти число x.

int numberX, privateX = 237;
numberX = (privateX % 100) * 10 + (privateX / 100);
Console.WriteLine(numberX);

A3.2.Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа x, то получилось число n. Найти число x. Значение n вводится с клавиатуры, 100 ≤ n ≤ 999 и при этом число десятков в n не равно нулю.

int n3 = Convert.ToInt32(Console.ReadLine()), x = 0;
if ((n3 > 99) && (n3 < 1000))
   x = (n3 % 100) * 10 + (n3 / 100);
Console.WriteLine(x);

Блок A3

static int Vvod_Chisla_Int()
{
   int chislo;
   string vvod;
   vvod = Console.ReadLine();
   while (!Int32.TryParse(vvod, out chislo))
   {
       Console.WriteLine("Недопустимые символы в строке ввода. Ожидается целое число:");
       vvod = Console.ReadLine();
   }
   return chislo;
}
static void Main(string[] args)
{
   int a;
   Console.WriteLine("Блок A3");
   Console.Write("Введите трехзначное число (число десятков и единиц != 0):");
   a = Vvod_Chisla_Int();
   while (a > 999 || a % 10 == 0|| a%100 == 0)
   {
     Console.Write("Введенное число вне диапазона допустимых значений. Повторите ввод:");
     a = Vvod_Chisla_Int();
   }
// A3.1
   Console.WriteLine("A3.1 Ответ: {0}", 237 % 100 * 10 + 237 / 100);
   Console.WriteLine();
// A3.2
   Console.WriteLine("A3.2 Ответ: {0}", a % 10 * 100 + a / 10);
   Console.WriteLine();
// A3.3
   Console.WriteLine("A3.3 Ответ: {0}", 564 / 10 + 564 % 10 * 100);
   Console.WriteLine();
// A3.4
   Console.WriteLine("A3.4 Ответ: {0}", a / 10 + a % 10 * 100);
   Console.WriteLine();
// A3.5
   Console.WriteLine("A3.5 Ответ: {0}", 546 % 100 / 10 * 100 + 546 / 100 * 10 + 546 % 10);
   Console.WriteLine();
// A3.6 
   Console.WriteLine("A3.6 Ответ: {0}", a % 100 / 10 * 100 + a / 100 * 10 + a % 10);
   Console.WriteLine();
// A3.7
   Console.WriteLine("A3.7 Ответ: {0}", 456 /100 * 100 + 456 % 10 * 10 + 456 % 100 / 10);
   Console.WriteLine();
// A3.8
    Console.WriteLine("A3.8 Ответ: {0}", a / 100 * 100 + a % 10 * 10 + a % 100 / 10);
    Console.WriteLine();
// A3.9
    Console.WriteLine("A3.9 Ответ: {0}", a % 10 * 100 + a % 100 / 10 * 10 + a / 100);
    Console.WriteLine();
    Console.ReadKey();
}

A3.4. В трехзначном числе x зачеркнули первую цифру. Когда полученное число умножили на 10, а произведение сложили с первой цифрой числа x, то получилось число n. По заданному n найти число x (значение n вводится с клавиатуры, 100 ≤ n ≤ 999).

int n, j, buf, buf1, number;
Console.WriteLine("Введите число из диапазона [1,999]");
n = int.Parse(Console.ReadLine());
while ((n > 999) | (n < 1))
{
   Console.WriteLine("Вы ввели число не из диапазона [1,999]");
   n = int.Parse(Console.ReadLine());
}
buf = n / 10;
buf1 = (n - buf * 10);
number = buf1 * 100 + buf;
Console.WriteLine("Число x = {0}", number);

A3.4 В трехзначном числе x зачеркнули первую цифру. Когда полученное число умножили на 10, а произведение сложили с первой цифрой числа x, то получилось число n. По заданному n найти число x (значение n вводится с клавиатуры, 1 ≤ n ≤ 999).

while (true)
{
   int x, x1, x2;
   int n = int.Parse(Console.ReadLine());
   if ( 1 > n || n > 999)
      Console.WriteLine("Число n не принадлежит диапазону от 1 до 999");
   else if (n / 10 == 0)
      Console.WriteLine("Число десятков в 'n' не должно быть равно '0'");
   else
  {
      x1 = n / 10 % 10 * 100; // сотни
      x2 = n / 100 * 10; //десяти
      x3 = n % 10; //единицы
      x = x3 + x2 + x1;
      Console.WriteLine($"Исходное число равно: {x}");
}

A3.8 В трехзначном числе x зачеркнули его вторую цифру. Когда к образованному при этом двузначному числу справа приписали вторую цифру числа x, то получилось число n. По заданному n найти число x (значение n вводится с клавиатуры, 100 ≤ n ≤ 999).

while (true)
{
   int x, x1, x2, x3;
   int n = int.Parse(Console.ReadLine());
   if (100 > n || n > 999)
      Console.WriteLine("Число n лежит в диапазоне от 100 до 999");
   else
   {
      x1 = n / 100 * 100; // сотни
      x2 = n % 10 * 10; //десятки
      x3 = n / 10 % 10; //единицы
      x = x3 + x2 + x1;
      Console.WriteLine($"Исходное число равно: {x}");
   }
}

А3.9 В трехзначном числе x зачеркнули его последнюю цифру. Когда в оставшемся двузначном числе переставили цифры, а затем приписали к ним слева последнюю цифру числа x, то получилось число n. По заданному n найти число x (значение n вводится с клавиатуры, 1 ≤ n ≤ 999 и при этом число единиц в n не равно нулю).

while (true)
{
   int x, x1, x2, x3;
   int n = int.Parse(Console.ReadLine());
   if (1 > n || n > 999)
      Console.WriteLine("Число n лежит в диапазоне от 1 до 999");
   else if (n % 10 == 0)
      Console.WriteLine("Число единиц в 'n' не должно быть равно '0'");
   else
   {
      x1 = n % 10 * 100; // сотни
      x2 = n / 10 % 10 * 10; //десятки
      x3 = n / 100; //единицы
      x = x3 + x2 + x1;
      Console.WriteLine($"Исходное число равно: {x}");
   }
}

A3.2. Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа x, то получилось число n. Найти число n. Значение n вводится с клавиатуры, 100 ≤ n ≤ 999 и при этом число десятков в n не равно нулю.

while (true)
{
   Console.Write("Введите N : ");
   int n = int.Parse(Console.ReadLine());
   if (n < 100 || n > 999)
      Console.WriteLine("Число N должно лежать в диапазоне от 100 до 999");
   else
   {
      int x = (n - n/10*10)*100 + n/10;
      Console.WriteLine($"число X равно {x}");
   }
}

A3.1 Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа x, то получилось число 237. Найти число x.

int x, y, num, priv;
y = 237;
num = y / 100;
priv = y % 100;
x = priv * 10 + num;
Console.WriteLine(x);

Данный вариант решения имеет место быть?

int x = 237;
int buf, buf1;
buf = x / 100;
buf1 = x % 100;
Console.WriteLine("{0}{1}", buf1, buf);

A3.2. Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа x, то получилось число n. Найти число n. По заданному n найти число x (значение n вводится с клавиатуры, 10 ≤ n ≤ 999 и при этом число десятков в n не равно нулю).

class Comma
{
    static void Main()
    {
    loop1:
        Console.Write("Введи число из диапазона (10 - 999): ");   // блок ввода трёхзначного числа
        int n = Convert.ToInt32(Console.ReadLine());
        if ((n > 999))     // проверка на то, что число вписалось в диапазон
        {
            Console.WriteLine("\nНе попал.\n");
            goto loop1;
        }

        int i, j, k, x1, x2;

        i = n / 100;        // число сотен (единци икса)
        j = (n % 100) / 10; // число десятков
        k = (n % 10) % 10;  // число единиц

        if (j == 0)
        {
            Console.WriteLine("\nПо условию: десятки не должны равняться 0. \n");
            goto loop1;
        }

      
        x1 = 10 * 237 - (999 * (237 / 100));   //A3.1
        x2 = 10 * n - (999 * i);                        //A3.2

        Console.WriteLine("результат для числа 237: {1} " +
            "\nрезультат для числа {0}: {2}", n, x1, x2);

        Console.ReadKey();
    }
}

Как-то очень длинно. Предложу вариант покороче.
int n, sot, des, ost, x;
while (0==0)
{
n = Convert.ToInt32(Console.ReadLine());
sot = n / 100; //сотни
des = (n % 100) / 10; //десятки
ost = n % 100; //остаток от деления
if(n>=100 && n<=999 && des != 0)
{
break;
}
Console.WriteLine("Число не входит в диапазон от 100 до 999, либо количество десятков = 0");
}
x = ost * 10 + sot;
Console.WriteLine(x);

34
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
()
x