Другое С/С++ Вопрос - Ответ

f.lux

Новичок
8
0
в том плане что, пользователь задает два числа, например 5 и 8, следовательно диапазон обусловленный этими двумя числами - 6 и 7.
и границы, коими являются числа 5 и 8 выводить не нужно, нужен только один лишь диапазон.
 
Последнее редактирование:

Dark_Knight

Me, me and me.
Друг
4,062
2,077
Ну на. Пробуй.
C++:
#include <iostream>
using namespace std;
int main() {
    int min, max, a, b;
    min = max = a = b = 0;
    cout << "Enter min and max" << "\n" ;
    cin >> min >> max;
    if(min > max ){
        cout << "Error 1";
        return 0;
    }
    else if( min == max){
        cout << "Error 2" << "\n";
        return 0;
    } else {
        a = min + 1;
        b = max - 1;
        if(a >= b ){
            cout << "Error 3" << "\n";
            return 0;
        }
        else if(a == b) {
            cout << "Error 4" << "\n";
            return 0;
        }
        else {
            cout << "Print range: " << "\n";
            while(a <= b){
                cout << a << "\n";
                a++;
            }
        }
    }
    return 0;
}
 
  • Bug
Реакции: BlackKnigga

bet.io

Известный
117
16
1. Подскажите пожалуйста, что я не так сделал. Программа должна сделать следующее условие: Необходимо найти минимальный m1 и максимальный m2 нечётные элементы (если в массиве нет нечётных элементов, m1 и m2 считаются равными нулю), уменьшить все чётные элементы, значения которых попадают в интервал (m1; m2), на величину m1 и вывести изменённый массив. Например, для исходного массива из пяти элементов 30, 89, 27, 90, 68 программа должна вывести числа 3, 89, 27, 90, 41 (минимум и максимум равны 27 и 89, все чётные элементы из интервала (27; 89) уменьшены на 27).
Код:
#include <iostream>
using namespace std;
void main()
{
    setlocale(0, "");
    int a[5], m1=INT_MAX, m2=INT_MIN, i=5;
    for (int i = 0; i < 5; i++)
    {
        cin >> a[i];
        if (a[i] % 2 != 0 && a[i] > m2) m2 = a[i];
        if (a[i] % 2 != 0 && a[i] < m1) m1 = a[i];
    }
    if (m2 < INT_MIN) m2 = 0;
    for (int i = 0; i < 5; i++)
    {
        if (a[i] % 2 == 0 && a[i] > m2&& a[i] < m1) a[i] -= m1;
    }
    cout << a[i];
    cin.get(); cin.get();
}
 

Pakulichev

Software Developer & System Administrator
Друг
1,789
2,131
1. Подскажите пожалуйста, что я не так сделал. Программа должна сделать следующее условие: Необходимо найти минимальный m1 и максимальный m2 нечётные элементы (если в массиве нет нечётных элементов, m1 и m2 считаются равными нулю), уменьшить все чётные элементы, значения которых попадают в интервал (m1; m2), на величину m1 и вывести изменённый массив. Например, для исходного массива из пяти элементов 30, 89, 27, 90, 68 программа должна вывести числа 3, 89, 27, 90, 41 (минимум и максимум равны 27 и 89, все чётные элементы из интервала (27; 89) уменьшены на 27).
Код:
#include <iostream>
using namespace std;
void main()
{
    setlocale(0, "");
    int a[5], m1=INT_MAX, m2=INT_MIN, i=5;
    for (int i = 0; i < 5; i++)
    {
        cin >> a[i];
        if (a[i] % 2 != 0 && a[i] > m2) m2 = a[i];
        if (a[i] % 2 != 0 && a[i] < m1) m1 = a[i];
    }
    if (m2 < INT_MIN) m2 = 0;
    for (int i = 0; i < 5; i++)
    {
        if (a[i] % 2 == 0 && a[i] > m2&& a[i] < m1) a[i] -= m1;
    }
    cout << a[i];
    cin.get(); cin.get();
}

C++:
#include <iostream>
using namespace std;

int main()
{
  int a[5], m1 = 0, m2 = 0;
  for (int i = 0; i < 5; i++) {
    cin >> a[i];  
    if (a[i] % 2 != 0 && m2 == 0)
      m2 = a[i];
    if (a[i] % 2 != 0 && a[i] > m1)
      m1 = a[i];
    if (a[i] % 2 != 0 && a[i] < m2)
      m2 = a[i];
  }
  for (int i = 0; i < 5; i++) {
    if (a[i] % 2 == 0 && a[i] > m2 && a[i] < m1)
      a[i] -= m2;
      if (i == 4)
        cout << a[i];
      else
        cout << a[i] << ", ";
  }
}
 
Последнее редактирование:
  • Влюблен
Реакции: bet.io

bet.io

Известный
117
16
C++:
#include <iostream>
using namespace std;

int main()
{
  int a[5], m1 = 0, m2 = 0;
  for (int i = 0; i < 5; i++) {
    cin >> a[i];
    if (a[i] % 2 != 0 && m2 == 0)
      m2 = a[i];
    if (a[i] % 2 != 0 && a[i] > m1)
      m1 = a[i];
    if (a[i] % 2 != 0 && a[i] < m2)
      m2 = a[i];
  }
  for (int i = 0; i < 5; i++) {
    if (a[i] % 2 == 0 && a[i] > m2 && a[i] < m1)
      a[i] -= m2;
      if (i == 4)
        cout << a[i];
      else
        cout << a[i] << ", ";
  }
}
Поясни пожалуйста все изменения, которые ты сделал. Особо не понятна вот эта строка:
Код:
      if (i == 4)
        cout << a[i];
      else
        cout << a[i] << ", ";
 
Последнее редактирование:

Pakulichev

Software Developer & System Administrator
Друг
1,789
2,131
Поясни пожалуйста что делают эти строки
Код:
      if (i == 4)
        cout << a[i];
      else
        cout << a[i] << ", ";
Если в обработке находится последний пятый элемент массива, просто выводим его, а если нет, добавляем после элемента запятую.
ты убрал из переменных i=5?
Это не нужно, так как переменная i автоматически объявляется при воспроизведении каждого из циклов.
 
  • Влюблен
Реакции: bet.io

Receiver

🥩 Передай meat, всё в скип, я в темпе
Проверенный
597
818
есть упаковщик / протектор для sf ?
 

Receiver

🥩 Передай meat, всё в скип, я в темпе
Проверенный
597
818
44300


Как можно скрыть/зашифровать эту строку??
 

SR_team

like pancake
BH Team
4,720
6,367
Здравствуйте, подскажите пожалуйста, как я могу экспортировать чёртов EXE из Visual Basic?
Проводил отладку в режиме RELEASE и DEBUG, но как только я вытаскиваю сам EXE из папки (где все сурсы трейнера) он перестает запускаться.
Далее я его эскпортировал через публикацию, тоже самое, стоит вытащить из папки, - он не работает.
посмотри какие библиотеки ему нужны и либо таскай их с exe, либо линкуй статикой
 

Shell :3

Активный
159
32
Как кракозябрики в имгуи окне изменить на нормальный русский текст, как поменять кодировку?