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

Ввод двумерного массива с клавиатуры и из файла - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Реализация рождения, выполнения и блокировки процессов http://www.cyberforum.ru/cpp-beginners/thread1142845.html
При запуске задачи процессы переходят по очереди к след через паузу, по нажатию клавиши. Нужна помощь,сделать так, чтобы все процессы до нового круга выводились без паузы, все их состояния друг за другом, а после по нажатию и новый круг. #include <iostream.h> #include <conio.h> #include <stdlib.h> int main () { int i, v, f, s; cout << "Kolichestvo processov "; cin >> f;
C++ Найти максимальное значение матрицы, первый элемент равный максимальному уменьшить на 10 Дан двухмерный массив найти максимальное значение, первый элемент равный максимальному уменьшить на 10, последний увеличить на 5. Dev 5.4. #include <iostream> #include <math.h> #include <conio.h> using namespace std; int main() { const int n=3; const int m=3; http://www.cyberforum.ru/cpp-beginners/thread1142841.html
C++ Создать двусвязный список с простыми числами
Помогите, пожалуйста, с лабораторной. Задача: Создать двусвязный список с простыми числами. Числа заполнить по следующему алгоритму: сначала заполнить список числами от 1 и до какого-то n. Затем начиная с двойки проверять и удалять все числа делящиеся на нее, потом брать следующий элемент списка и делать аналогичную операцию, пока не будет чисел, делящихся на другие.
Написать программу, которая делит числа в 5 степени на число в 14 степени и выводит ответ в 5 степени. Найти ошибку C++
Ребят, такая проблема, задание: Написать программу, которая делит числа в 5 степени на число в 14 степени и выводит ответ в 5 степени. Но есть косяк, у меня получается делит число в 5 степени не на число а 14 степени, а на число в 16, как исправить косяк? вообще в голову не приходит. буду благодарен! #include "stdafx.h" #include <iostream> using namespace std; int perevod10(int...
C++ Освобождение памяти в c++ http://www.cyberforum.ru/cpp-beginners/thread1142826.html
Привет, помогите разобраться с освобождением памяти в c++. Я так понимаю, что если освободить память, то переменная удаляется, но почему же такой код: int *a= new int; *a=1; cout <<*a<<endl; delete a; *a=2; cout <<*a;Выводит 1 2? Ведь по идее он не должен выводить 2, т.к. переменная а удалена.
C++ Экспертам и программистам С++: пройти собеседование и получить работу прошу напишите список книг по С++,которые реально полезны и необходимы:для того ,чтобы пройти собеседование и получить работу.и что необходимо знать и чем владеть?пожалуйста,буду рад узнать мнения о советы профессионалов. P.S:Прошу писать только реально работающих программистов на С++. Добавлено через 56 минут актуально подробнее

Показать сообщение отдельно
Милаше
0 / 0 / 0
Регистрация: 13.04.2012
Сообщений: 75

Ввод двумерного массива с клавиатуры и из файла - C++

08.04.2014, 20:53. Просмотров 1696. Ответов 4
Метки (Все метки)

Здравствуйте.
Хочу сделать программу, которая позволяет вводить двумерный массив либо из файла, либо с клавиатуры.
Вот я написал код:
C++ (Qt)
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
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
 
//функция выводит массив на экран
void printArray(int array[3][7], const int row, const int column)
{
 cout << "Poluchennyj massiv\n";
 for(int i = 0; i < row; i++)
 {
  for(int j = 0; j < column; j++)
  cout << setw(4) << array[i][j];
  cout << endl;
 }
}
 
//функция читает массив из файла
void fileArray(int array [3][7], const int row, const int column)
{
   // const int row = 3, column = 7;//размеры массива
//    int array[3][7];//двумерный массив
    //создаем объект класса ifstream
    //и сразу указываем файл, с которого будем читать
   // cout
    ifstream f("array.txt");
    //читаем файл и прочитанное запоминаем в массив
    for(int i = 0; i < row; i++)
    for(int j = 0; j < column; j++)
    f >> array[i][j];
    //печатаем полученный заполненный массив
    //fileArray(array, row, column);
}
 
//функция заполнения с клавиатуры
void keyArray(int array [3][7], const int row, const int column)
{
 //const int row = 3, column = 7;//размеры массива
   // int array[row][column];//двумерный массив
for(int i = 0; i < row; i++)   //строки массива
{
cout << "Vvodim " << i + 1 << " stroku\n"; //подсказка
for(int j = 0; j < column; j++)   //столбцы массива
{
cout << "Vvedite celoe chislo: ";  //выводим подсказку
cin >> array[i][j];                //запоминаем введенное значение
}
}
 
//keyArray(array, row, column);   //печатаем полученный массив
 
}
int main()
{
    int array [3][7];int row;int column;
    cout << "Vvedite 1 (c faila) ili 2 (c klaviaturi)";
    switch (1)
    {
        case '1': fileArray(array, row, column); break;
        case '2': keyArray(array, row, column); break;
    }
 
return 0;
}
Но где-то наверняка есть ошибка так как программа ничего не выдаёт. Поскольку "стаж работы" на С++ небольшой, то без ошибок написать не получается.
Пожалуйста, если кто сможет покажите где ошибка, что не так написано. Заранее огромное спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru