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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 10.05.2010, 22:13   #1
KOSS.AB
Пользователь
 
Регистрация: 17.04.2010
Сообщений: 47
По умолчанию Зада4и на С++

Помогите сделать зада4и: 2-ую, 4-ую и 5-ую на С++, пожалуйста!



Photo-0136.jpg
I am KOSS ЦЗЮ!
KOSS.AB вне форума
Старый 12.05.2010, 10:34   #2
Bearw08
Boom-boom)
Форумчанин
 
Аватар для Bearw08
 
Регистрация: 02.02.2009
Сообщений: 500
По умолчанию

5 Первое что приходит на ум - это использовать две строки, если нужна одна, тогда необходимо поиграться с insert() из <string>
Код:
 
int i = 0;
string s = "Hello, 2 45 Wo499Rl10d!.";
cout << s << endl;
string ss;


while (i < s.size())
{

    switch (s[i])
    {
        case '1':
        ss  +=  "один";

        break;

        case '2':
        ss  +=  "два";
        break;

        case '3':
        ss += "три";
        break;

        case '4':
        ss += "четыре";
        break;

        case '5':
        ss += "пять";
        break;

        case '6':
        ss += "шесть";
        break;

        case '7':
        ss += "семь";
        break;

        case '8':
        ss += "восемь";
        break;

        case '9':
        ss += "девять";
        break;

        case '0':
        ss += "ноль";
        break;

        default:
        ss += s[i];
        break;
    };
     i++;
}
¡ʁɔvʎнdǝʚǝdǝu dиw
Bearw08 вне форума
Старый 12.05.2010, 15:24   #3
KOSS.AB
Пользователь
 
Регистрация: 17.04.2010
Сообщений: 47
По умолчанию

спасибо большое, но всё равно не работает
I am KOSS ЦЗЮ!
KOSS.AB вне форума
Старый 14.05.2010, 11:23   #4
Bearw08
Boom-boom)
Форумчанин
 
Аватар для Bearw08
 
Регистрация: 02.02.2009
Сообщений: 500
По умолчанию

Цитата:
Сообщение от KOSS.AB Посмотреть сообщение
спасибо большое, но всё равно не работает
хм интересно, а че за ошибики выводиТ? у меня вот смотри :
Цитата:
Before:
Hello, 2 45 Wo499Rl10d!.
After:
Hello, два четырепять WoчетыредевятьдевятьRlодиннольd!.
¡ʁɔvʎнdǝʚǝdǝu dиw
Bearw08 вне форума
Старый 14.05.2010, 11:41   #5
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

зачем вторая строка? можно проще:
Код:
#include <iostream>
#include <windows.h>
using namespace std;

string rus(string);

int main(void)
{
   string digits[10] = {"один","два","три","четыре","пять","шесть","семь","восемь","девять","ноль"};
   string input;
   cin >> input;
   for(int i=0; i<(int)input.size(); i++)
        if( input[i] >='0' && input[i] <='9' ) cout << rus( digits[ input[i]-49 ]) << " ";
   cout << endl;   
   return 0;
}

string rus(string str) {
        char buf[10];
	CharToOem(str.c_str(), buf);
	str = buf;
	return str;
}

Последний раз редактировалось NiCola999; 14.05.2010 в 11:47.
NiCola999 вне форума
Старый 14.05.2010, 12:01   #6
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

вот те вторая:
Код:
#include <iostream>
#include <windows.h>
using namespace std;
#define size 10

string rus(string);

int main(void)
{  
   double arr[ size ] = {1.2,3.4,5.6,7.8,9.1,0.1,0.5,3.4,80.4,10.45};
   double max = 0,j=0;
   double a = 1.3, b = 5;   
   for(int i=0; i<size; i++)
        (arr[i] >= a && arr[i] <= b) ? max = arr[i] : j++;
   if(j == size) cout << rus("Такого элемента нет") << endl;
   else cout << rus("Максимальный элемент, принадлежащий отрезку [a,b]: ") << max << endl;   
   return 0;
}

string rus(string str) {
    char buf[100];
	CharToOem(str.c_str(), buf);
	str = buf;
	return str;
}
4-ую попробуй сам решить

Последний раз редактировалось NiCola999; 14.05.2010 в 12:39.
NiCola999 вне форума
Старый 16.05.2010, 16:57   #7
KOSS.AB
Пользователь
 
Регистрация: 17.04.2010
Сообщений: 47
По умолчанию

Nicola999 у тебя проги тоже не работают. при4ем обе сразу

Я даже не знаю по4ему, выдаёт ошибки вот такие:

error C2679: бинарный '<<': не найден оператор, принимающий правый операнд типа 'std::string' (или приемлемое преобразование отсутствует);

error C2664: CharToOemW: невозможно преобразовать параметр 1 из 'const char *' в 'LPCWSTR'

я сам не понял 4ё ваще ты там написал, в проге-то


ну всё равно спс за помощь.
I am KOSS ЦЗЮ!
KOSS.AB вне форума
Старый 16.05.2010, 17:00   #8
KOSS.AB
Пользователь
 
Регистрация: 17.04.2010
Сообщений: 47
По умолчанию

Вот я тоже 5 прогу накидал, но тут ошибок больше 50, можете её попытатьса переделать.





#include <iostream>
#include <math.h>
#include <stdlib.h>
#include <conio.h>
using namespace std;
void main()
{int m[100],k,max,n;
int i=1;
char s[10];
{

cout<<"BBEDITE STROKY";
cin>>n;

while i<=strlen(s) do; {
case 0: { //delete(s,i,1);
// insert(s,"NULL",i);};
erase (s,0);insert (s, i);};
case 1: { delete(s,i,1);
insert('ODIN',s,i);
};
2: { delete(s,i,1);
insert('DVA',s,i);;
};
'3': { delete(s,i,1);
insert('TRI',s,i);;
};
'4': { delete(s,i,1);
insert('CHETbIRE',s,i);
};
'5': { delete(s,i,1);
insert('PYATb',s,i);
};
'6': { delete(s,i,1);
insert('SHECTb',s,i);
};
'7': { delete(s,i,1);
insert('CEMb',s,i);
};
'8': { delete(s,i,1);
insert('BOCEMb',s,i);
};
'9': { delete(s,i,1);
insert('DEBYATb',s,i);
};
};
cout<<s;
}}
I am KOSS ЦЗЮ!
KOSS.AB вне форума
Старый 16.05.2010, 17:16   #9
KOSS.AB
Пользователь
 
Регистрация: 17.04.2010
Сообщений: 47
По умолчанию

вот 2-ая зада4а с ошибками


#include <iostream>
#include <stdlib.h>
using namespace std;
void SORT(int i,int j)
{int i,j;
cout<<"Отсортированный массив\n";
for (i=2;i<=N;i++)
if (a[i-1]>a[i])
for (j=1;j<=i-1;j++)
if (a[i]<a[j])
{b=a[j];a[j]=a[i];
for (k=j+1;k<=i;k++)
{c=a[k];a[k]=b;b=c;};
};
};


void main()
{int aa[3][3],cc[3][3],p[3][3],i,j;
cout<<"BBEDITE MATRICY aa";
{for (i=1;i<=3;i++) do
for (j=1;i<=3;j++) do
cin>>aa[i][j];
cout<<"MATRICA aa";
for (i=1;i<=3;i++); do
{for (j=1;i<=3;j++); do
printf("aa[i][j]=%5 f", aa[i][j]);
cout<<" ";
}
for (i=1;i<=3;i++) do
for (j=1;i<=3;j++) do
p[i,j]=2*aa[i,j]+1;
cout<<"MATRICA cc";
for (i=1;i<=3;i++) do {
for (j=1;i<=3;j++) do
cc[i][j]=p[i][j];
};
for (i=1;i<=3;i++) do {
for (j=1;i<=3;j++) do
printf("cc[i][j]=%5 f",cc[i][j]);
cout<<" ";
}
}
}





а вот 3-ая зада4а, она тоже с ошибками



#include <iostream>
#include <math.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
using namespace std;
void main()
{int m,n,j,i,ii,mod_sum,sum;
float arr[100][100];
ii=0;
srand(time(NULL));
cout<<"VVedite razmer matrici m=";
cin>>m;
cout<<"VVedite razmer matrici n=";
cin>>n;
for (i=1;i<=m;i++);
{for (j=1;j<=n;j++)
{arr[i][j]=-10 + rand() %21;
cout<<" "<<arr[i][j];};
cout<<endl;
}
for (i=1;i<=m;i++);
{for (j=1;j<=n;j++)
{sum=sum+arr[i][j];
if ( fmod(float(arr[i][j]), float (2))=0) mod_sum=mod_sum+arr[i][j];
};
if ((sum-mod_sum)=0)
{cout<<"В ",i,"-ой строке все элементы чётные";
ii=ii+1;}
sum=0;
mod_sum=0;
}
if (ii=0) cout<<"Таких строк нет!";
}


помогите исправить, чтобы правильно работали.
I am KOSS ЦЗЮ!
KOSS.AB вне форума
Старый 26.05.2010, 14:53   #10
KOSS.AB
Пользователь
 
Регистрация: 17.04.2010
Сообщений: 47
По умолчанию

СПС всем! тема закрыта! :-)
I am KOSS ЦЗЮ!
KOSS.AB вне форума
Закрытая тема


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