alfastore4
?>

Напишите программу, которая считывает значения двух переменных a и b, затем меняет их значения местами (то есть в переменной a должно быть записано то, что раньше хранилось в b, а в переменной b записано то, что раньше хранилось в a затем выведите значения переменных. решите без использования дополнительных переменных для python

Информатика

Ответы

npdialog66

a = int(input())

b = int(input())

a,b = b,a  

print(a,b)

Объяснение:

* т.к в Python по сути нет понятия переменных, а все имена, с которыми мы работаем, представляют из себя лишь ссылки на объекты в памяти, языку не составляет труда просто перезаписать эти ссылки, без использование каких либо буферов. Но это так, если вдруг интересно как эта магия работает

Кочугурова

5

Объяснение:

1. Функциональные клавиши (с F1 по F12).

2. Алфавитно-цифровые (буквы и цифры (цифры, которые сверху))

3. Клавиши управления курсором (Page Up, Page Down, Home, End, Insert)

4. Специальные клавиши (Backspase, Caps Lock, Shift, Alt, Nut Look, Enter)

5. Дополнительная клавиатура (важно заметить, что при нажатии клавиши Num Lock загорается индикатор, и клавишами с цифрами, а также знаками арифметических операций можно пользоваться как на калькуляторе. при выключенном индикаторе работает режим управления курсором.)

katrinasvr
Одно из решений, возможно, не самое эффективное
#include <iostream>
#include <iomanip>
int main()
{
    using namespace std;

    //исходная последовательность
    const int N = 8;
    double Arr[N] = { 14.2, -3.4, 7.8, -3.1, 8.2, 98.22, -7, 12 };

    //вывод на экран исходной последовательности
    for (int i = 0; i < N; ++i)
        cout << Arr[i] << "  ";
    cout << endl;

    //подсчитаем количества отрицательных и неотрицательных элементов
    int kpos = 0;
    int kneg = 0;
    for (int i = 0; i < N; ++i)
        if (Arr[i] < 0)
            ++kneg;
        else
            ++kpos;

    //создадим массивы отрицательных и неотрицательных элементов
    double * ArrNeg = new double[kneg];
    double * ArrPos = new double[kpos];

    int kn = 0, kp = 0;
    for (int i = 0; i < N; i++)
        if (Arr[i] < 0)
            ArrNeg[kn++] = Arr[i];
        else
            ArrPos[kp++] = Arr[i];

    cout << "Enter a, b, c or d: ";
    char ch;
    cin >> ch;

    if (ch == 'a' || ch == 'b' || ch == 'c' || ch == 'd')
    {
        switch (ch)
        {
            //пункт а)
            case 'a':
                for (int i = 0; i < kneg; ++i)
                    Arr[i] = ArrNeg[i];
                for (int i = 0; i < kpos; ++i)
                    Arr[i + kneg] = ArrPos[i];
                break;

                //пункт б)
            case 'b':
                for (int i = 0; i < kneg; ++i)
                    Arr[i] = ArrNeg[--kn];
                for (int i = 0; i < kpos; ++i)
                    Arr[i + kneg] = ArrPos[i];
                break;

                //пункт в)
            case 'c':
                for (int i = 0; i < kneg; ++i)
                    Arr[i] = ArrNeg[i];
                for (int i = 0; i < kpos; ++i)
                    Arr[i + kneg] = ArrPos[--kp];
                break;

                //пункт г)
            case 'd':
                for (int i = 0; i < kneg; ++i)
                    Arr[i] = ArrNeg[--kn];
                for (int i = 0; i < kpos; ++i)
                    Arr[i + kneg] = ArrPos[--kp];
                break;
        }
    }
    else
        cout << "You entered wrong symbol\n";

    for (int i = 0; i < N; ++i)
        cout << Arr[i] << "  ";
    cout << endl;
    delete[] ArrNeg;
    delete[] ArrPos;
    return 0;
}

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

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

Напишите программу, которая считывает значения двух переменных a и b, затем меняет их значения местами (то есть в переменной a должно быть записано то, что раньше хранилось в b, а в переменной b записано то, что раньше хранилось в a затем выведите значения переменных. решите без использования дополнительных переменных для python
Ваше имя (никнейм)*
Email*
Комментарий*

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

kyrtlab39
nikdenly
rmitin
leeteukism
silicon-films3375
ilyatamurov
muzaffarovich-Sergei1777
katarinacorvus825
buhtovarish
Coverplus30
Chistova-Dmitrii1162
kattarina71
bestxbox
d2904
Artur-62838
▲