Форум программистов, компьютерный форум CyberForum.ru

Вывести на экран массив из целых чисел - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Меняют ли элементы в vector свои адреса при вызове метода push_back? http://www.cyberforum.ru/cpp-beginners/thread189734.html
Допустим я определил вектор и указатель на один из его элементов: vector< int > v( 10 ); int* p = &(v); Затем использую push_back v.push_back(42); Может ли при этом изменится адрес элемента v, так что указатель p перестанет на него указывать? А если может, то спасут ли меня ссылки вместо указателей?
C++ C++ IDE на флэшку Посоветуйте среду програмирования (IDE) которую можно было запустить с флэшки. http://www.cyberforum.ru/cpp-beginners/thread189730.html
Цикл for C++
Помогите написать программу используя цикл for... В заданной последовательности (размер и значения вводятся пользователем ), все элементы которой попарно различны, найдите: а) наибольший элемент из отрицательных; б) наименьший элемент из положительных;
Посчитать количество символов C++
1)Вводится строка, посчитать кол-во цифр и букв, и вывести эти подсчеты. 2)Вводятся несколько строк, посчитать также кол-во букв и цифр и вывести их кол-во. Буду очень благодарен за помощь.
C++ Округление Long double. http://www.cyberforum.ru/cpp-beginners/thread189707.html
Нужно округлить число типа long double в меньшую сторону т.е. просто обнулить всю дробную часть, но при этом надо сохранить эту самую дробную часть в другую переменную. Ничего похожего гугл не нашел.
C++ Задание про строки Вывести на экран латинские буквы и символы ',' и '.'. удалив из текста цифры и другие символы. Я написал программу #include "stdafx.h" #include <iostream> #include <cstring> using namespace std; int main() { int k=0, k1=0, i=0, j=0; подробнее

Показать сообщение отдельно
silent_1991
Эксперт С++
4958 / 3034 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
12.11.2010, 22:20     Вывести на экран массив из целых чисел
1.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#include <iostream>
// Функции передаётся два целых числа и символ, обозначающий
// арифметическую операцию, функция возвращает результат
// применения этой операции к числам
int calc(int operator1, char operation, int operator2)
{
    int res;
 
    switch (operation) // В зависимсоти от операции
    {
    case '+': // либо складываем,
        res = operator1 + operator2;
        break;
    case '-': // либо вычитаем,
        res = operator1 - operator2;
        break;
    case '*': / либо перемножаем,
        res = operator1 * operator2;
        break;
    case '/': // либо делим числа
        res = operator1 / operator2;
        break;
    }
 
    return res;
}
 
// Функция считает результат выражения ((((1 ? 2) ? 3) ? 4) ? 5) ?6,
// где на месте вопросов символы, представляющие арифметические операции
int expr(char op1, char op2, char op3, char op4, char op5)
{
    return calc(calc(calc(calc(calc(1, op1, 2), op2, 3), op3, 4), op4, 5), op5, 6);
}
 
int main()
{
    char ops[4] = {'+', '-', '*', '/'};
    int result;
 
    // Каждый цикл - для своей позиции арифметической операции в исходном выражении
    for (int i = 0; i < 4; i++)
    {
        for (int j = 0; j < 4; j++)
        {
            for (int k = 0; k < 4; k++)
            {
                for (int l = 0; l < 4; l++)
                {
                    for (int t = 0; t < 4; t++)
                    {
                        result = expr(ops[i], ops[j], ops[k], ops[l], ops[t]); // Рассчитываем результат выражения для очередного набора операций
 
                        if (result == 35) // Если результат равен 35 - выводим полученный набор операций
                            std::cout << "((((1 " << ops[i] << " 2) "
                                                  << ops[j] << " 3) "
                                                  << ops[k] << " 4) "
                                                  << ops[l] << " 5) "
                                                  << ops[t] << " 6 = 35" << std::endl;
                    }
                }
            }
        }
    }
 
    std::cin.get();
    return 0;
}
Добавлено через 7 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <iostream>
#include <fstream>
#include <vector>
 
// Функция, которая ищет минимум в векторе arr
// в промежутке от A-й до B-й позиции
int minAB(std::vector < int > &arr, int A, int B)
{
    int min = arr[A];
 
    // Пробегаем по массиву от A-го до B-го элемента
    for (int i = A + 1; i <= B; i++)
        if (min > arr[i]) // Если очередной элемент меньше найденного ранее минимального,
            min = arr[i]; // делаем его минимальным
 
    return min;
}
 
int main()
{
    std::vector < int > arr;         // Входной массив
    std::vector < int > min;         // Массив минимальных элементов
    std::ifstream fin("INPUT1.TXT"); // Поток, связанный с входным файлом
 
    // Считываем элементы, пока не достигнем конца файла
    while (!fin.eof())
    {
        int temp;
 
        fin >> temp; // Считываем очередное число
 
        arr.push_back(temp); // Кладём его в массив
    }
 
    int N = arr.size(); // Запоминаем длину вектора
    int K;
 
    // Вводим длину группы элементов, среди которых надо искать минимум
    std::cout << "Enter K: ";
    std::cin >> K;
 
    // Бежим по массиву, на каждом шаге сдвигаясь на K элементов
    for (int i = 0; i < N; i += K)
    {
        if (i + K >= N) // Если до конца массива осталось меньше K элементов
            min.push_back(minAB(arr, i, N - 1)); // Ищем минимум на интервале от i до конца массива
        else // Иначе, если элементов ещё много
            min.push_back(minAB(arr, i, i + K - 1)); // Ищем минимум в очередной группе из K элементов
    }
 
    // Выводим полученный массив минимумов
    for (int i = 0; i < min.size(); i++)
        std::cout << min[i] << " ";
 
    std::cout << std::endl;
 
    std::cin.get();
    std::cin.get();
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru