Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 02.04.2017
Сообщений: 6
1

Пожалуйста переведите из С++ в С(Си)

02.04.2017, 20:03. Просмотров 878. Ответов 8
Метки нет (Все метки)

Задание: Работа со строками. Найти длину самого короткого слова

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <string>
#include <iostream>
#include <sstream>
using namespace std;
int main(void)
{
string text="qwe asdf zxcvb qw zxcvasdf weqr";
int size=10;
istringstream iss(text);
while(iss)
{
string temp;
iss >> temp;
if(size>temp.size() && temp.size()!=0) size=temp.size();
}
cout<<"самое короткое слово: "<<size<<" букв";
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.04.2017, 20:03
Ответы с готовыми решениями:

Переведите пожалуйста из C++ в C#
Задача 1 #include&lt;iostream&gt; using namespace std; void main() { ...

Переведите с C++ на C# пожалуйста
Имеется текст, который не получается перевести на c# так, чтобы он работал. Текст C++: int prv,...

Переведите с Паскаля на Си пожалуйста
Var *ar:array of integer; *i,n,k:integer; *b:boolean; begin randomize; *k:=1; *b:=false;...

Переведите с С++ на Java Пожалуйста
#include &lt;iostream&gt; #include &lt;clocale&gt; #include &lt;cstring&gt; #include &lt;conio.h&gt; using namespace...

8
69 / 69 / 35
Регистрация: 06.07.2016
Сообщений: 415
02.04.2017, 20:20 2
Лучший ответ Сообщение было отмечено StLucius как решение

Решение

Цитата Сообщение от StLucius Посмотреть сообщение
переведите из С++
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
#include <stdio.h>
#include <ctype.h>
#include <limits.h>
 
size_t length_of_the_word(char *text);
int main(void)
{
  char text[]="qwe asdf zxcvb qw a zxcvasdf weqr";
   printf("%d\n",length_of_the_word(text));
   return 0;
}
 
size_t length_of_the_word(char *text)
{
  size_t min_length = UINT_MAX;
  size_t counter = 0;
 
  while(*text)
    {
      if (isalpha(*text))
        {
          counter++;
        }
      if (!isalpha(*text) && isalpha(*(text-1)))
      {
          if (min_length > counter)
            {
               min_length = counter;
            }
          counter = 0;
      }
 
      text++;
      if (!*text && isalpha(*(text-1)))
      {
          if (min_length > counter)
            {
               min_length = counter;
            }
          counter = 0;
      }
     }
    return min_length;
}
Вот так, если считаем, что цифр не существует во входных данных. Если они существуют, isalpha меняется на isalnum.
0
0 / 0 / 0
Регистрация: 02.04.2017
Сообщений: 6
02.04.2017, 20:40  [ТС] 3
Спасибо

Добавлено через 1 минуту
Цитата Сообщение от Notoriously Посмотреть сообщение
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
#include <stdio.h>
#include <ctype.h>
#include <limits.h>
 
size_t length_of_the_word(char *text);
int main(void)
{
  char text[]="qwe asdf zxcvb qw a zxcvasdf weqr";
   printf("%d\n",length_of_the_word(text));
   return 0;
}
 
size_t length_of_the_word(char *text)
{
  size_t min_length = UINT_MAX;
  size_t counter = 0;
 
  while(*text)
    {
      if (isalpha(*text))
        {
          counter++;
        }
      if (!isalpha(*text) && isalpha(*(text-1)))
      {
          if (min_length > counter)
            {
               min_length = counter;
            }
          counter = 0;
      }
 
      text++;
      if (!*text && isalpha(*(text-1)))
      {
          if (min_length > counter)
            {
               min_length = counter;
            }
          counter = 0;
      }
     }
    return min_length;
}
Вот так, если считаем, что цифр не существует во входных данных. Если они существуют, isalpha меняется на isalnum.
Добавлено через 6 минут
Notoriously,
А если консоль открывается и закрывается при компиляции?
0
69 / 69 / 35
Регистрация: 06.07.2016
Сообщений: 415
02.04.2017, 20:51 4
Цитата Сообщение от StLucius Посмотреть сообщение
А если консоль открывается и закрывается при компиляции?
#include <stdlib.h>
И добавьте в конце system("pause");
0
0 / 0 / 0
Регистрация: 02.04.2017
Сообщений: 6
02.04.2017, 20:54  [ТС] 5
Notoriously, не решается, return 0 тоже добавлял
0
69 / 69 / 35
Регистрация: 06.07.2016
Сообщений: 415
02.04.2017, 20:58 6
Цитата Сообщение от StLucius Посмотреть сообщение
не
Окно появляется на доли секунды и исчезает
0
0 / 0 / 0
Регистрация: 02.04.2017
Сообщений: 6
02.04.2017, 21:07  [ТС] 7
Notoriously, не работает ничего из темы
0
69 / 69 / 35
Регистрация: 06.07.2016
Сообщений: 415
02.04.2017, 21:08 8
Цитата Сообщение от StLucius Посмотреть сообщение
не работает
Такого быть не может.
Обращайтесь к человеку, который посоветовал вам IDE, в котором это все не работает.
Какая IDE?
0
0 / 0 / 0
Регистрация: 02.04.2017
Сообщений: 6
02.04.2017, 21:16  [ТС] 9
Notoriously, Не работает все в Visual Studio 2015

Добавлено через 5 минут
Notoriously, решил, там было два ретурна, а я только к последнему привязал паузу и гетч
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.04.2017, 21:16

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Переведите пожалуйста на qbasic
Program Array134; Const max = 20; Type point = Record x,y:real; End; Var a:Array Of...

Переведите, пожалуйста, с паскаля на C++
type Person = record Surname, Name, Adress, ...

Переведите пожалуйста с CLIPS на C++
//Клипс не знаю вовсе, знаю, что семантика другая, но нужно что-то похожее, пожалуйста!!!...

Переведите, пожалуйста, текст
Здравствуйте. Переведите, пожалуйста текст на английский язык. Только преподаватель строгая,...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.