С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
cactus09
Чайник
69 / 69 / 4
Регистрация: 15.02.2012
Сообщений: 475
#1

Не работает программма "перевертыш" - C++

15.02.2012, 22:22. Просмотров 451. Ответов 4
Метки нет (Все метки)

Всем доброго времени суток.
Пока только учусь программированию на с++ и решил написать программу в которую вводиш например "приветмир" а она тебе выдает "римтевирп". Написал код, скомпилировал а она вместо "римтевирп" пишет "Иримтевир".

Вот код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <stdlib.h>
 
using namespace std;
 
int main(int argc, char *argv[])
{ char ch[9],pr[9];
for(int n = 0;n<9;n++){
cin>>ch[n];}
 
for(int n = 0;n<9;n++){
pr[9-n]=ch[n];}
 
for(int n = 0;n<9;n++){
cout<<pr[n];}
  cout<<endl;
  system("PAUSE");  
  return 0;
}
ЗЫ: Прошу зарание не ругать - первый день на форуме.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.02.2012, 22:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не работает программма "перевертыш" (C++):

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно" - C++
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить погоду &quot;тепло&quot;, &quot;жарко&quot;, &quot;холодно&quot;, &quot;очень холодно&quot;. Я так...

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование) - C++
Разработать программу с использованием наследования классов, реализующую классы: − воин; − пехотинец(винтовка); − матрос(кортик). ...

Патерн "прототип" не работает, выдаёт ошибку "недопустимый вызов нестатической ф-ции", где я в коде ошибка? - C++
Вот мой код... #include &lt;iostream&gt; #include &lt;Windows.h&gt; #include &lt;vector&gt; #define vrom vector&lt;room&gt; using namespace std; ...

Почему не работает функция std::regex_replace(temp,"amp;",""); - C++
Пробую вызывать функцию std::regex_replace(temp,&quot;amp;&quot;,&quot;&quot;); Пишет ошибку: test_ok_ruDlg.cpp 1&gt;d:\visual studio...

Классы "Студент" ,"Группа" - не работает метод ввода и вывода - C++
Тема: Классы языка С ++: группа и студент Задание 1. Создайте класс «Группа». - Данные класса - номер группы, специальность,...

Создать класс "Вентилятор" содержащий в себе классы: "Двигатель", "Контроллер", "Пульт управления" - C++
Помогите с кодом написания задачи, не понимаю как написать классы в классе. Нужно создать класс &quot;вентилятор&quot; содержащий в себе классы:...

4
Игорь с++
437 / 460 / 16
Регистрация: 26.01.2011
Сообщений: 2,033
15.02.2012, 22:35 #2
может так-
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream>
using namespace std;
int main()
{
    char a[1000];
    int v=0;
              gets(a);
              for(int r=0;r<1000;r++){
if(a[r]!='\0'){v++;}
else{break;}
}
for(int r=v;r>-1;r--){
        cout<<a[r];
        }
cout<<"\n";
system("pause");
 
return 0;
}
1
ШКІПЕР
94 / 94 / 7
Регистрация: 14.04.2010
Сообщений: 280
Записей в блоге: 9
Завершенные тесты: 1
15.02.2012, 22:57 #3
cactus09, ну кроме оригинального подхода к решению задания у Вас еще и неотформатированый как нужно текст программы.
Ближе к делу:

C++
1
2
for(int n = 0;n<9;n++){
pr[9-n]=ch[n];}
У Вас есть это. Видимо, для pr счетчик должен идти с конца, так вот, в массиве С++ с 9-ти элементов максимальный индекс будет 8. Почему ? Все просто: нумерация с 0. Поэтому все должно было быть так:
C++
1
2
for(int n = 0;n<9;n++){
pr[8-n]=ch[n];}
Работает! Только для фразы "приветмир".
P.S. Писать подобным образом в наше время не рекомендуется.

Добавлено через 4 минуты
И кстати, вместо
Цитата Сообщение от cactus09 Посмотреть сообщение
for(int n = 0;n<9;n++){ cin>>ch[n];}
иногда пишут
C++
1
cin>>ch;
или
C++
1
scanf("%s", &ch);
Тоже самое с выводом.
1
Dekio
Фрилансер
Эксперт С++
5837 / 1218 / 214
Регистрация: 23.11.2010
Сообщений: 3,378
Записей в блоге: 1
15.02.2012, 23:02 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <algorithm>
#include <string>
 
int main()
{
    std::string Str;
    std::getline(std::cin, Str);
    std::reverse(Str.begin(), Str.end());
    std::cout<<Str<<std::endl;
    system("pause");
    return 0;
}
1
cactus09
Чайник
69 / 69 / 4
Регистрация: 15.02.2012
Сообщений: 475
16.02.2012, 19:46  [ТС] #5
Всем огромное спасибо за помощ (особенно СПАСИБО ШКІПЕР'у).
0
16.02.2012, 19:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.02.2012, 19:46
Привет! Вот еще темы с ответами:

Создать абстрактный класс "Издание" и производные классы "Книга", "Статья", "Электронный ресурс" - C++
1. Создать абстрактный класс Издание с методами, позволяющими вывести на экран информацию об издании, а также определить является ли данное...

Создать класс "Книга" с полями "название книги", "количество страниц", "год издания" - C++
Создать класс Книга поля: название книги,количество страниц,год издания методы: вычислить сколько лет книге и количество дней прошедших...

Сдающий карты. "cards_remaining--" одинаково работает и с "--", и без - C++
Всем привет, возник вопрос по поводу программы &quot;сдающий карты&quot;, программа с книги &quot;С++ без страха&quot;, автора не помню, не столь важно) Вот...

Определить тип данных "Запись", имеющий поля "Фамилия", "Пол", "Зарплата" - C++
определить тип данных запись имеющий поля фамилия пол зарплата. определить массив из 10 записей. в программе ввести в массив данные и...


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

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

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