nastya1890
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Всем привет! Помогите пожалуйста объединить 3 задачи в одну.. Я так поняла,что все 3 функции должны выполнятся в одной задаче.. у меня имеются все 3 кусочка,но как отдельные задачи.. Заранее Большое спасибо! Задание: Следующие задания оформить в виде функций. Отдельно разработать демонстрационную программу для демонстрации работоспособности функций. а. выяснить, является ли данное слово перевертышем ( так называются слова, читающиеся одинаково слева направо и справа налево) - оформить как логическую функцию. б. возвратить первое слово строки (без пробелов и знаков препинания). в. удалить первое слово строки со всеми пробелами. Сами отдельные задачи.. А) #include<iostream> #include <string> #include<math.h> #include<windows.h> #include<string.h> #include<stdio.h> #include <ctype.h> using namespace std; char bufRus[256]; char* Rus(const char* text) { CharToOem(text, bufRus); return bufRus; } char* deleted(char a[40]); int palindrom(char a[40]); int main() { char s[40]; cin.getline(s,40); cout << '\n'; cout<<deleted(s); cout << '\n'; if (palindrom(s)==0) cout<<"Yes"<<endl; else cout<<"No"<<endl; system ("pause"); return 0; } char* deleted(char a[40]) { int n=strlen(a),t=0,p=0; for (int i=0;i<n;i++) if (a[i]==' '|| a[i]==',' || a[i]=='.' ) {t=t+1; for (int j=i;j<n;j++) a[j]=a[j+1];} a[n-t]='\0'; for (int i=0;i<n;i++) if (a[i]==' '|| a[i]==',' || a[i]=='.' ) t=1; if (t==1) return deleted(a); else return a; } int palindrom(char a[40]) { int p=0; char b[40]; for (int k=0;k<strlen(a);k++) b[k]=a[strlen(a)-k-1]; for (int f=0;f<strlen(a);f++) if (a[f]!=b[f]) p=p+1; return p; } Б) #include <string> #include <iostream> using namespace std; int main() { char* psz = new char[255],*s=new char[255]; cin>>s; strcpy(psz,s); for (int i = 0; psz[i] != '\0'; i++) if (psz[i] == '.' || psz[i] == '?' || psz[i] == '!') { int pos = i; while ((psz[pos] != ' ') && (pos >= 0)) pos--; for (int n = pos; psz[n] != '\0'; n++) psz[n] = psz[n+(i-pos)]; } printf("%s\n",psz); system ("pause"); return 0; } В) #include <string> #include <iostream> using namespace std; int main() { int i, j, k, len, cnt = 0; char *ptr, c, st[100]; puts("vvedite stroky "); gets(st); len = strlen(st); if(st[0] != 0 && st[0] != ' ') cnt = 1; for(i = 0; i < len && cnt < 2; ++i) if(st[i] == ' ' && st[i+1] != ' ') ++cnt; for(j = k = i; k < len; ++k) { c = st[k]; if(c != ' ') st[j++] = c; } st[j] = 0; cout << &st[i] << endl; system ("pause"); return 0; } |