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

В матрице, записанной в файл, четные элементы разделить на 4, а к нечетным прибавить 10 - C++

Восстановить пароль Регистрация
 
Тимкин Николай
2 / 2 / 0
Регистрация: 11.11.2013
Сообщений: 55
17.03.2014, 11:50     В матрице, записанной в файл, четные элементы разделить на 4, а к нечетным прибавить 10 #1
Вот условие задачи:
В матрице A(6,6) четные элементы разделить на 4, а к нечетным прибавить 10. Вывести полученную матрицу.
код:
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
#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
 
int main()
{
    int i,j;
    int a[6][6];
    FILE *fp, *fp1;
    if ((fp=fopen("dat.txt","r"))==NULL)
    {
        perror("dat.txt");
        return 1;
    }
    fp1=fopen("rez.txt","w");
    for (i=0;i<6;i++)
    {for (j=0;j<6;j++)
    {fscanf(fp,"%d ",&a[i][j]);
    if(i%2==0)
        if(j%2==0)
        a[i][j]/=4;
        else
        a[i][j]+=10;
    fprintf(fp1,"%d ",a[i][j]);
    }
    fprintf(fp1,"\n");
    }
    fclose(fp);
    fclose(fp1);
    return 0;
}
Но проблема в том что программа не правильно записывает результат
Например:
Исход. массив:
4 4 4 4 4 4
4 4 4 4 4 4
4 4 4 4 4 4
4 4 4 4 4 4
4 4 4 4 4 4
4 4 4 4 4 4

После обрабоотка выводит так:
1 14 1 14 1 14
4 4 4 4 4 4
1 14 1 14 1 14
4 4 4 4 4 4
1 14 1 14 1 14
4 4 4 4 4 4

Как это исправить???
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.03.2014, 11:50     В матрице, записанной в файл, четные элементы разделить на 4, а к нечетным прибавить 10
Посмотрите здесь:

C++ Элементы, у которых сумма номеров строки и столбца четные оставить без изменения, а остальные разделить на максимальный по модулю элемент строки
В квадратной матрице отсортировать строки, у которых на побочной диагонали стоять четные элементы C++
Дано целое число. Если оно является нечетным положительным, то прибавить к нему 1, если отрицательным, то вычесть 2, если нулевым, то заменить на 10 C++
C++ Сделать четные биты равными нечетным и наоборот
В одномерном массиве четные элементы разделить на 2, нечетные умножить на 3 C++
C++ Переставить в строке все элементы матрицы из нечетных позиций на четные, а четные на нечетные, по условию
C++ Разделить файл на четные и нечетные числа
Лишние символы в конце строки, записанной в файл C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5946 / 5551 / 1784
Регистрация: 18.12.2011
Сообщений: 14,175
Завершенные тесты: 1
17.03.2014, 12:31     В матрице, записанной в файл, четные элементы разделить на 4, а к нечетным прибавить 10 #2
Цитата Сообщение от Тимкин Николай Посмотреть сообщение
if(i%2==0) if(j%2==0)
Замените на
C++
1
if(a[i][j]%2==0)
Yandex
Объявления
17.03.2014, 12:31     В матрице, записанной в файл, четные элементы разделить на 4, а к нечетным прибавить 10
Ответ Создать тему
Опции темы

Текущее время: 21:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru