Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Borland 3.1] на файлы и матрицу... 
:(
    Опции темы
Valentin07
Дата 21.4.2007, 17:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 18.4.2007

Репутация: нет
Всего: нет



Есть такая зада4ка:  
В текстовом файле хранится целочисленная матрица 15х15. «Разорвать» эту матрицу по главной диагонали, записав в другой файл сначала элементы, находящиеся над диагональю, потом в одну строку диагональные элементы, и затем элементы, находящиеся под диагональю. Форма треугольников должна сохраниться. 

У меня написана прога, но во-первых препод сказал, 4то это НЕ РАБОТА с файлами и + ко всему не хо4ет все под главной диагональю выводить как треугольник...=((то4нее я не могу=)
Поэтому вывожу вру4ную.....
Программировать нужно на Borland 3.1.....
А вот, 4то полу4илось:

Код

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#include <alloc.h>
#include <stdio.h>
#include <conio.h>
#include <time.h>
#define m 5
 main()
{
int i,j,k;
int matr[m][m];
FILE *f;
FILE *f1;
f=fopen("lab10-2.txt","r");
f1=fopen("lab10-22.txt","w+");
for (i=0;i<m;i++)
{
 for (j=0;j<m;j++)
 {
  fscanf(f,"%d\t",&matr[i][j]); 
}}
for (i=0;i<m;i++)
{
 for (j=0;j<m;j++)
 {
 printf("%d ",matr[i][j]);
 }
 printf("\n");
}
fprintf(f1,"\n");
fprintf(f1,"\t%d",matr[0][1]);
fprintf(f1,"\t%d",matr[0][2]);
fprintf(f1,"\t%d",matr[0][3]);
fprintf(f1,"\t%d",matr[0][4]);
fprintf(f1,"\n");
fprintf(f1,"\t\t%d",matr[1][2]);
fprintf(f1,"\t%d",matr[1][3]);
fprintf(f1,"\t%d",matr[1][4]);
fprintf(f1,"\n");
fprintf(f1,"\t\t\t%d",matr[2][3]);
fprintf(f1,"\t%d",matr[2][4]);
fprintf(f1,"\n");
fprintf(f1,"\t\t\t\t%d",matr[3][4]);
fprintf(f1,"\n");
fprintf(f1,"\n");
for (i=0;i<m;i++)
{
 for (j=0;j<m;j++)
 {
 if (i==j)
{fprintf(f1,"%d\t",matr[i][j]);}
 } }
 fprintf(f1,"\n");

 fprintf(f1,"\n");
for (i=0;i<m;i++)
 {
 for (j=0;j<m;j++)
 {
 if (i>j)
 {fprintf(f1,"%d\t",matr[i][j]);}
 }
 fprintf(f1,"\n");
 }
 fprintf(f1,"\n");                                                        
fclose(f);
fclose(f1);
return 0;
}


Помогите плиз....и без особых наворотов=))), а то мы еще многого не проходили..=)))

PM MAIL   Вверх
Anikmar
Дата 21.4.2007, 18:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 9
Всего: 59



Цитата(Valentin07 @  21.4.2007,  17:11 Найти цитируемый пост)
Форма треугольников должна сохраниться. 

Мне это особенно понравилось.
А преподаватель не сказал, каким шрифтом он это просматривать будет, чтобы еще и треугольник сохранился?
PM MAIL ICQ   Вверх
Rockie
Дата 21.4.2007, 19:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 23.4.2006

Репутация: 13
Всего: 31



Valentin07, 15x15 и ввод/вывод уже сам сделаешь. 

Код

#include <stdio.h>

#define size 5

int main()
{
    int matrix[size][size] = {
                              11,12,13,14,15,
                              21,22,23,24,25,
                              31,32,33,34,35,
                              41,42,43,44,45,
                              51,52,53,54,55,
                 };

    int m=0, n=0;                // печатаем исходную матрицу
    for(m=0;m<size;m++)
      {
        for(n=0;n<size;n++)
          printf("%d ",matrix[m][n]);
        printf("\n");
        }
       printf("\n");


    int i=0,j=0;                 // печатаем верхнюю часть матрицы
    for(i=0;i<size;i++)
      {
        for(j=0;j<i+1;j++)
          printf("   ");

        for(j;j<size;j++)
          printf("%d ",matrix[i][j]);

        printf("\n");
      }

    int s;                             // печатаем строку
    for(s=0;s<size;s++)      
       printf("%d ",matrix[s][s]);
    printf("\n");


    int k=0,l=0;              // печатаем нижнюю часть матрицы
    for(k=0;k<size;k++)
      {
        for(l=0;l<k;l++)
          printf("%d ",matrix[k][l]);

        printf("\n");
      }

    return 0;
}





--------------------
Чтобы иметь большой гардероб - надо иметь большой гардероб.
PM   Вверх
Valentin07
Дата 21.4.2007, 20:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 18.4.2007

Репутация: нет
Всего: нет



Спасибо!!!!!!!!!!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0426 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.