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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.04.2016, 00:28   #1
5ss
Новичок
Джуниор
 
Регистрация: 09.04.2016
Сообщений: 2
По умолчанию Переписать с c++ на c#

Код:
#include <iostream>
#include <algorithm>
#include <fstream>
 
using namespace std;
 
int func(const int x)
{
    int arr[10];
    int a = x;
    int max = 0;
    
    for (int i = 0; i < 10; i++)
        arr[i] = 0;
 
    while (a > 0)
    {
        int temp = a % 10;
        arr[temp]++;
        a /= 10;        
    }
 
    for (int i = 0; i < 10; i++)
    {
        if (arr[i] > max)
        {
            max = arr[i];
        }
    }
 
    return max;
}
 
 
 
class functional_sort
{
public :            
    bool operator () (const int a,int b)
    {           
        if (func(a) > func(b))      
            return true;
        else if(func(a)<func(b)) return false;
        else return(func(a) - func(b));     
    }   
    
};
 
int main()
{
    ifstream fin("in.txt"); 
 
    if (!fin.is_open())
    {
        cout << "Не удалось открыть входной файл!" << endl;
        return -1;
    }
    int count = 0;
    int a;
    while (!fin.eof())
    {
        fin >> a;
        count++;
    }
 
    fin.clear();
    fin.seekg(0);
 
    int *mas = new int[count];
    for (int i = 0; i < count; i++)
    {
        fin >> mas[i];      
    }
 
    sort(mas, mas + count,functional_sort());
    
    for (int i = 0; i < count; i++)
    {
        cout << mas[i]<< endl;
    }
    
 
    fin.close();
    
    delete[]mas;
    return 0;
}
из файла прочитал и отсортировал числа по убыванию. дальше проблема
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Threading.Tasks;
 
namespace LAB_1
{
    class Program
    {
        static void Main(string[] args)
        {
            var mas = File.ReadAllLines("D:\\in.txt").Select(int.Parse).ToArray();
            Array.Sort(mas,new Sort());            
            foreach (int i in mas)
                Console.WriteLine(i);            
        }  
    }
   
}
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;
using System.Globalization;
 
namespace LAB_1
{
    public class Sort : IComparer
    {     
            public int Compare(Object x, Object y)
        {
                
            if((x is IComparable) && (y is IComparable))
            {
                IComparable tx = (IComparable)x;
                IComparable ty = (IComparable)y;
                return(ty.CompareTo(tx));
            }
            throw new ArgumentException(@"Error");
        }
    } 
           
}
5ss вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переписать из c++ в c Pushok! Помощь студентам 4 08.10.2015 21:25
Переписать программу на С++ ChesnokovDmitry Фриланс 2 04.06.2015 18:18
переписать 2 строчки на c++ vadim93 Помощь студентам 1 22.12.2013 21:59
Переписать прогу. Flo Помощь студентам 3 15.03.2011 19:41
Переписать insolent Общие вопросы C/C++ 6 24.08.2010 14:32