Другие языки программирования и технологии

Всем добрый вечер! Помогите пожалуйста решить данную задачу по информатике.

Dim'en Baza
Dim'en Baza
128
Ща
МШ
Медер..=) Шаршембаев...
2 081
Лучший ответ
1. строку в массив
2. искать в массиве код пробела.
3.записать во 2й массив удаляя повторяющиеся пробелы.
4. вывести 2й массив.
...Примитивно, зато на 100% работает
Sub maxpch()
Dim w1() As String
Dim w2() As String
Dim txt As String

txt = InputBox("Введите текст")
w1 = Split(txt, " ")
txt = "_"
n = -1
For i = 0 To UBound(w1())
If Trim(w1(i)) <> "" Then
n = n + 1
ReDim Preserve w2(n)
w2(n) = w1(i)
End If
Next i

For i = n To 0 Step -1
txt = txt + w2(i) + " "
Next
MsgBox Left(txt, Len(txt) - 1) & "_"

End Sub
Рома Кройтор
Рома Кройтор
1 249
хех, я не знаю, на каком языке надо это было реализовать, но вот вам вариант на плюсах, рекурсивный реверсивный вывод =):
void printEmReversed(char* addr)
{
char* current = NULL;
current = strtok((addr)?addr:NULL," ");
if(!current) return;
printEmReversed(NULL);
cout << current << ((addr)?"\n":" ");
}
и все.. .
ну а использовать функцию можно так:
void main()
{
setlocale(LC_ALL,"russian");
//temp - это для примера временное хранилище. заменить его на чтение из файла или откуда там надо.. .
char* temp = "набор русских слов разделенных пробелами";
int size = strlen(temp)+1;
char* str = new char[size];
strcpy(str,temp);
printEmReversed(str);
delete[] str;
}