Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.04.2013, 20:27   #1
majuw
Пользователь
 
Регистрация: 04.04.2013
Сообщений: 77
По умолчанию перевести код с С++ на С

Код:
#include "stdafx.h"
#include <iostream>
 
using namespace std;
 
void main()
{ 
    setlocale(LC_ALL,"Russian");
    int n;
    cout<<"Введите размер матрицы: ";
    cin>>n;
    cout<<"Введите элементы матрицы "<<endl;
    int** a=new int*[n];
    for (int i=0; i<n; i++)
    {
        a[i]=new int[n];
        for(int j=0; j<n; j++)
        {
            cin>>a[i][j];
        }
    }
    bool sim=true;
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<n; j++)
        {
            if (a[i][j]!=a[n-1-j][n-1-i])
            {
                sim=false;
                break;
            }
        }
        if (!sim)
        {
            break;
        }
    }
    cout<<((sim)?"Матрица симметрична относительно побочной диагонали":
        "Матрица не симметрична относительно побочной диагонали")<<endl;
    system("pause");
}


________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(это кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 05.04.2013 в 07:16.
majuw вне форума Ответить с цитированием
Старый 05.04.2013, 07:17   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а чем данный код не C ? (я некомпетентен, просто любопытно...)
Serge_Bliznykov вне форума Ответить с цитированием
Старый 05.04.2013, 07:44   #3
Ezhik Kihze
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 639
По умолчанию

наличием потоков ввода/вывода...
ICQ: 677936656 Gmail: ekEmbed@gmail.com
Ezhik Kihze вне форума Ответить с цитированием
Старый 05.04.2013, 07:45   #4
sectors70
Пользователь
 
Регистрация: 15.04.2012
Сообщений: 20
По умолчанию

А еще new и объявление переменных в неположенных для C местах
sectors70 вне форума Ответить с цитированием
Старый 05.04.2013, 12:50   #5
Bugrimov
C/C++, Java
Участник клуба
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Сообщений: 1,680
По умолчанию

Не проверял, но мне кажется должно быть что-то такое, проверяйте...
Код:
#include <stdio.h>
#include <stdlib.h>
 
void main()
{ 
    int n, i, j;
	int sim = 1;
    int **a;
	
	setlocale(LC_ALL,"Russian");
	
	printf("Введите размер матрицы: ");
    scanf("%d", &n);
	
	printf("Введите элементы матрицы ");
    
	
    a = (int**)malloc(sizeof(int*) * n);
    if(a == NULL)
	{
		printf(" Error memory!");
		return 1;
	}
	for(i = 0; i < n; i++)
    {
        a[i] = (int*)malloc(sizeof(int) * n);
        for(j = 0; j < n; j++)
        {
            scanf("%d", &a[i][j]);
		}
    }
	
    for(i = 0; i < n; i++)
    {
        for(j = 0; j < n; j++)
        {
            if(a[i][j] != a[n-1-j][n-1-i])
            {
                sim = 0;
                break;
            }
        }
        if (!sim)
        {
            break;
        }
    }
    printf("\n %s",((sim) ? "Матрица симметрична относительно побочной диагонали":
        "Матрица не симметрична относительно побочной диагонали"));
    system("pause");
}
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!
Bugrimov вне форума Ответить с цитированием
Старый 05.04.2013, 13:03   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
объявление переменных в неположенных для C местах
если память не изменяет современный С позволяет обьявлять переменные где угодно.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 05.04.2013, 16:06   #7
sectors70
Пользователь
 
Регистрация: 15.04.2012
Сообщений: 20
По умолчанию

Да, вы правы, я ошибся
sectors70 вне форума Ответить с цитированием
Старый 05.04.2013, 16:22   #8
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

Но вот main должен возвращать int и в C, и в C++.
Somebody вне форума Ответить с цитированием
Старый 28.04.2013, 15:21   #9
cleac
Пользователь
 
Аватар для cleac
 
Регистрация: 19.04.2013
Сообщений: 27
По умолчанию

Somebody, не обязательно. Целое значение возвращается для индексации ошибок со стороны ОСи. Можно и "void" использовать
All rights reserved©.
cleac вне форума Ответить с цитированием
Старый 28.04.2013, 17:23   #10
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

По стандарту - только int. Остальные варианты implementation-defined.
Somebody вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевести код из C++ в C# Dj_SheLL Помощь студентам 0 22.03.2011 23:18
С++ перевести код Денис999 Помощь студентам 0 26.10.2010 22:47
Перевести код на C++ mela Помощь студентам 3 01.06.2010 22:35
Перевести код с VB на C# LT. Общие вопросы .NET 2 25.05.2010 19:21
перевести код с vb в delphi fize Помощь студентам 11 11.01.2010 18:40