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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.12.2012, 01:52   #1
julia9311
Пользователь
 
Регистрация: 23.06.2012
Сообщений: 69
По умолчанию как можно переделать программу?

как можно переделать эту программу так, чтобы использовались функции класса string?)
Код:
#include <iostream>
 
using std::cout;
using std::endl;
 
int main()
{
    
 
    char massiv[]="abcdefghijklmnopqrstuvwxyz^qwertyuiop[]asdfghjkl;'mn";      
    
    size_t kol_vo_elementov= (sizeof(massiv)/sizeof(char))-1;  
 
    cout<<kol_vo_elementov<<endl;
 
    const size_t seredina_massiva= kol_vo_elementov/2;      
 
    const char simvol=' ';      
 
    size_t chislo_otstupov=0;       
    size_t i=0;                    

    for(i=0;i<=seredina_massiva;i+=2)
        ++chislo_otstupov;
 
    --chislo_otstupov;      
 
    cout<<"Число отступов= "<<chislo_otstupov<<endl;
    
 
 
 
    size_t counter=0;   
    size_t temp=0;     
 
 
    for(i=0;i<=seredina_massiva;i+=2)   
    {
        
        size_t ots=0;
 
        while(ots!=chislo_otstupov)         
        {
            cout<<simvol;
            ++ots;
        }
        
        for(temp=counter;temp!=i;++temp)   
            cout<<massiv[temp];
 
        for(temp=i;temp!=counter;--temp)    
            cout<<massiv[temp];
 
        cout<<massiv[temp];                 
 
        --chislo_otstupov;                  
        ++counter;                         
 
        cout<<endl;                         
    }
 
    return 0;
	system ("pause");
}
julia9311 вне форума Ответить с цитированием
Старый 19.12.2012, 11:41   #2
Perchik71
С++, Delphi
Форумчанин
 
Аватар для Perchik71
 
Регистрация: 24.11.2012
Сообщений: 495
По умолчанию

я давно вам писал используйте стринг...
Код:
string или std::string text, line;
FILE *f = fopen("text", "r");
if(!f) return;
char buf[64];
while(!feof())
{
   fgets(buf, 64, f);
   text.append(buf);
}
fclose(f);
int pos = 0, end;
while((pos = text.find("//", p)) != string или std::string ::npos); или -1
{
  //нашли
  pos += 2;
  end = text.find('\n', pos); //пока возьму только этот символ
  line.assign(text, pos, end - pos);
  printf(line.c_str()); //выплёвываем в консоль комментарий
}
Код не проверил не когда.. но идея простая как изюм.
еслиб вы прочли пост. то этого бы не случилось.
Если помог, тут весы есть , Вам не сложно, а мне приятно.
Perchik71 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
просьба! как можно переделать код макроса, чтобы корректно искал? Nick31 Microsoft Office Excel 7 19.05.2012 00:34
Как исправить или переделать это можно? cargo29 Общие вопросы Delphi 16 15.01.2011 02:21
Как можно переделать под типизированный Raideres Паскаль, Turbo Pascal, PascalABC.NET 2 07.06.2010 11:55
Как можно переделать прогу (С++) Olya90 Помощь студентам 5 31.03.2009 15:32