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

Сделать программу более компактной + Ручной ввод размерности квадратной матрицы. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Описать структуру с именем TRAIN http://www.cyberforum.ru/cpp-beginners/thread526382.html
Описать структуру с именем TRAIN, содержащую следующие поля: - название пункта назначения - номер поезда - время отправления Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из шести элементов типа TRAIN; записи должны быть упорядочены по времени отправления поезда; - вывод на экран информации о поездах, направляющихся в пункт, название...
C++ ноль в результате нужно просто вычислить степень #include <stdio.h> #include <conio.h> #include <math.h> void main() {float x, y; clrscr(); printf("chislo\n"); scanf("%d",x); http://www.cyberforum.ru/cpp-beginners/thread526363.html
C++ Файл последовательного доступа
Ребят, не могу понять как делать и препод ничего толком не объясняет: Заполнить файл последовательного доступа N действительными числами, полученными с помощью датчика случайных чисел. Найти сумму минимального и максимального элементов этого файла.
C++ бред в результате
ничего не могу понять! нужно посчитать v, для этого просим ввести пользователя h и s, в результате получается какой-то бред!!! ввожу 3 и 2, должно получится 2 (3/3*2)! в результате выдает -24033. как так? что я не так сделал? #include <stdio.h> #include <conio.h> #include <math.h> void main() { int h,s,v; clrscr(); printf("h"); scanf("%d",h);
C++ C++, переписать данные из файла в файл, отсортировав по фамилии и убыванию года рождения http://www.cyberforum.ru/cpp-beginners/thread526350.html
В файле input.xtx содержатся сведения о группе студентов в формате: 1.номер группы; 2. запись о каждом студенте группы, которая содержит следующие сведения:фамилия, имя, отчество, год рождения, оценки по пяти предметам. Переписать данные файла input.txt в output.txt, отсортировав их: в алфавитном порядке по фамилии, а затем по убыванию года рождения. Прошу показать сортировку любым...
C++ Выгрузка из Excel в comboBox Здравствуйте, очень требуется помощь в решении задачи. Необходимо из файла xls выгрузить данные из определенного столбца и строки в comboBox. Пишу на Windows Forms C++ Добавлено через 1 час 22 минуты Очень срочно требуется решение! подробнее

Показать сообщение отдельно
Yentroistok
1 / 1 / 0
Регистрация: 25.02.2012
Сообщений: 59

Сделать программу более компактной + Ручной ввод размерности квадратной матрицы. - C++

23.03.2012, 17:28. Просмотров 995. Ответов 10
Метки (Все метки)

Программу я написал.

Но надо сделать программу еще более компактной. + Вопрос, как сделать так, чтобы n не было константой, т.е. его можно было ввести вручную.(Основной критерий: минимум операторов при максимальном использовании возможностей языка С++.) Куда еще меньше я не представляю. С++ изучаю всего пару месяцев.

Условие задания:
Дана константа - натуральное число n, действительная квадратная матрица порядка n. Построить последовательность b1...bn из нулей и единиц, в которой b[i]=1 тогда и только тогда, когда в i-й строке матрицы есть хотя бы один отрицательный элемент.

Использую MVS Ultimate C++
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
#include <stdio.h>
#include <conio.h>
#include<clocale>
#include <math.h>
#include <iostream>
 
const int n =10;
 
void main()
{    
   setlocale(LC_ALL, "Russian");
   int a [n] [n];
   int b[n];
// Заполнение матрицы
 
    for (int i = 0; i < n; i++)
        {
            for   (int j = 0; j < n; j++)
                {
                    a [i] [j]=rand()% 200 - 100;
                }
        } 
 
// Заполнение 1 если a[i][j] отрицательное и 0 если a[i] [j]  положительное;
   
    for (int i = 1; i < n; i++)
        {
             bool f = false;
             for (int j = 0; j < n; j++)
             {
                    if (a[i][j] < 0) 
                        {
                            f = true;
                            break;
                        }
            }
             b[i] = (f = true)?(b[i] =  1):(b[i] = 0);
        }  
 
// Вывод полученной матрицы
 
for (int i = 1; i < n; i++)
    {
       printf(" %d ", b[i]);
    }
   _getch();
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru