Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
21 / 1 / 1
Регистрация: 22.12.2013
Сообщений: 196
Записей в блоге: 1

Перевод текста из C++ в C#

07.07.2016, 13:17. Показов 1631. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите исправить.
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
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace WindowsFormsApplication2
{
    class Rational
    {
        long a, b;
        public Rational(long ,long ); //error CS1001: Ожидались идентификаторы
        public Rational(long x){b=1; a=x;}
        public long getp() const {return a;}      //числитель(error CS1002: ожидалась ;),(error CS1519: Недопустимая лексема ";" в объявлении класса, структуры или интерфейса),(error CS1031: Ожидался тип)
        public long getq() const {return b;}      //знаменатель (Ожидался класс, делегат, перечисление, интерфейс или структура),(error CS1022: Ожидалось определение типа или пространства имен, либо признак конца файла)
 
    Rational::Rational(long x, long y){
      long temp=gcd(x,y);
         a=x/temp; 
         b=y/temp;
        }
    Rational & Rational:: operator +=(Rational x){
      long temp=gcd(b,x.b);
      a=a*(x.b/temp)+x.a*(b/temp);
      b=(b*x.b)/temp;
      return *this;
        }
   Rational & Rational:: operator -=(Rational x){
      long temp=gcd(b,x.b);
      a=a*(x.b/temp)-x.a*(b/temp);
      b=(b*x.b)/temp;
      return *this;
        }
   Rational & Rational::operator *=(Rational x){
      long temp;
      a=a*x.a;
      b=b*x.b;
      temp=gcd(a,b);
      a=a/temp;
      b=b/temp;
      return *this;
        }
   Rational & Rational::operator /=(Rational x){
      long temp;
      a=a*x.b;
      b=b*x.a;
      temp=gcd(a,b);
      a=a/temp;
      b=b/temp;
      return *this;
        }  
   ostream & operator << (ostream & o, Rational x){ //вывод
      return o<<x.a<<'/'<<x.b;
        }
   istream & operator >> (istream & i, Rational &x){ //ввод 
      long c, d;
      i>>c>>d;
      x.a=c;
      x.b=d;
      return i;
        }  
   bool operator == (Rational x, Rational y){
      return (x.a==y.a && x.b==y.b);
        }
   bool operator > (Rational x, Rational y){
      x.a=x.a*y.b;
      y.a=y.a*x.b;
      return (x.a>y.a);
        }
   bool operator != (Rational x, Rational y){
      return !(x==y);
        }
   bool operator <=(Rational x, Rational y){
      return !(x>y);
        }
   bool operator <(Rational x, Rational y){
      return (!(x>y) && !(x==y));
        }
   bool operator >=(Rational x, Rational y){
      return (x>y || x==y);
        }
   bool operator ! (Rational x){
      return !(x==0);
        }
   Rational operator + (Rational x, Rational y){
      return x+=y;
        }
   Rational operator - (Rational x, Rational y){
      return x-=y;
        }
   Rational operator * (Rational x, Rational y){
      return x*=y;
        }
   Rational operator / (Rational x, Rational y){
      return x/=y;
        }
    };
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.07.2016, 13:17
Ответы с готовыми решениями:

Перевод текста
подскажите пожалуйста почему на сайте который я делаю текст по английски пишется а по русски нет

Перевод текста
Всем привет, народ подскажите, что написать в функции кнопки что бы при нажатии она переводила один текст в другой. Или же при нажатии...

перевод текста на C#
Подскажите пожалуйста с чего мне начать, мне нужно разработать программу, которая смогла бы переводить текст с помощью...

7
13 / 13 / 4
Регистрация: 04.07.2016
Сообщений: 47
07.07.2016, 13:31
Neotwalker, тут не исправлять, тут почти полностью переписывать нужно
0
21 / 1 / 1
Регистрация: 22.12.2013
Сообщений: 196
Записей в блоге: 1
07.07.2016, 13:46  [ТС]
MrDinja, Да, это я уже понял
Туго дается C#, но заставляют изучить его за 4 дня и уже переводить из C++ в C#
0
13 / 13 / 4
Регистрация: 04.07.2016
Сообщений: 47
07.07.2016, 14:57
Neotwalker, ну я 5 день изучаю почти без знания C/C++
Пару советов: поищи конструкторы, перегрузка операторов и объявление методов.
Потоки для начала не используй, лучше перегрузить метод ToString() - он вроде в каждом классе по умолчанию должен быть

Добавлено через 1 минуту
И еще, шаблоны не используй, вставляй идентификаторы
0
21 / 1 / 1
Регистрация: 22.12.2013
Сообщений: 196
Записей в блоге: 1
08.07.2016, 12:12  [ТС]
MrDinja,
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
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace WindowsFormsApplication2
{
    class Rational
    {
        public long a, b;
        public Rational(long x, long y)
        {
            long temp = gcd(x, y);
            a = x / temp;
            b = y / temp;
        }
        public Rational(long x) { b = 1; a = x; }
        public long getp() { return a; }      //числитель
        public long getq() { return b; }      //знаменатель
        public static bool operator ==(Rational x, Rational y)
        {
            return (x.a == y.a && x.b == y.b);
        }
        public static bool operator >(Rational x, Rational y)
        {
            x.a = x.a * y.b;
            y.a = y.a * x.b;
            return (x.a > y.a);
        }
        public static bool operator !=(Rational x, Rational y)
        {
            return !(x == y);
        }
        public static bool operator <=(Rational x, Rational y)
        {
            return !(x > y);
        }
        public static bool operator <(Rational x, Rational y)
        {
            return (!(x > y) && !(x == y));
        }
        public static bool operator >=(Rational x, Rational y)
        {
            return (x > y || x == y);
        }
        public static bool operator !(Rational x)
        {
            if ((x.a > 0) && (x.b > 0)) return false;
            return true;
        }
        public static Rational operator +(Rational x, Rational y)
        {
            return x += y;
        }
        public static Rational operator -(Rational x, Rational y)
        {
            return x -= y;
        }
        public static Rational operator *(Rational x, Rational y)
        {
            return x *= y;
        }
        public static Rational operator /(Rational x, Rational y)
        {
            return x /= y;
        }
        public static long gcd(long x, long y)
        {
            while (y==0)
            {
                long temp = y;
                y = x % y;
                x = temp;
            }
return x;
        }
    };
}
Вот, сделал, но есть пара ошибок:
Code
1
warning CS0660: "WindowsFormsApplication2.Rational" определяет оператор == или оператор !=, но не переопределяет Object.Equals(object o)
Code
1
warning CS0661: "WindowsFormsApplication2.Rational" определяет оператор == или оператор !=, но не переопределяет Object.GetHashCode()
Code
1
error CS0161: "WindowsFormsApplication2.Rational.gcd(long, long)": не все ветви кода возвращают значение
Все, ошибки исправил, стоило только написать return x;

Добавлено через 6 минут
Теперь надо как-то написать в Visual Studio C# Forms, т.е. сделать форму, помогите)
0
13 / 13 / 4
Регистрация: 04.07.2016
Сообщений: 47
08.07.2016, 12:19
Neotwalker, к сожалению я в c# только 6й день, если не ошибаюсь, так что с формами пока никак помочь не могу
Перегрузку операторов ещё тоже основательно не изучил (имею ввиду всякие GetHashCode и подобное)
0
21 / 1 / 1
Регистрация: 22.12.2013
Сообщений: 196
Записей в блоге: 1
08.07.2016, 13:02  [ТС]
Вот сам проект, выходит ошибка: Необработанное исключение типа "System.NullReferenceException" в WindowsFormsApplication2.exe

Дополнительные сведения: Ссылка на объект не указывает на экземпляр объекта.
Вложения
Тип файла: 7z WindowsFormsApplication2.7z (34.1 Кб, 4 просмотров)
0
13 / 13 / 4
Регистрация: 04.07.2016
Сообщений: 47
08.07.2016, 13:14
Neotwalker, при беглом взгляде с очень малым знанием языка и незнанием форм вообще пока мне показалось, что в main не проинициализирована Form1. Пока не знаю, что такое partial, но наверное Form1 это класс, а не ссылка на объект

Добавлено через 1 минуту
То есть нужно определить переменную типа (класса) Form1, например:
C#
1
   Form1 myForm = new Form1;
Добавлено через 55 секунд
То есть нужно определить переменную типа (класса) Form1, например:
C#
1
   Form1 myForm = new Form1;
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.07.2016, 13:14
Помогаю со студенческими работами здесь

перевод текста
Привет всем! Мне задали состряпать в паскале алгоритм, который будет переводить текст с латинского на русский, все перепробывала, не...

Перевод текста из Паскаля в Си++
Здравствуйте. Хотел бы попросить перевод кода с Паскаля на Си++. Сам я Си++ знаю довольно плохо, поэтому, прошу вас помочь. Вот код: ...

Перевод текста в звук
Подскажите классы или библиотеки для перевода текста в звук

Перевод текста в XML
Всем доброго дня! Как-то внезапно возникло несколько вопросов. 1. Есть текст, обычной исходный код С++ в *.cpp файле. Как мне его...

проверить перевод текста
текст Он удаляет все данные в указанной вами директиве или заменяет их на свои. Как думаете, найдет ваш антивирусник эту маленькую...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru