
C/C++
если можно с коммментариями
Помогите решить задачу на C++

// если массив уже дан и его вводить не нужно.
#include <iostream>
using namespace std;
int main()
{
char str[] = "ist$love84p"; // массив симолов
int _do = 0, _posle = 0; // чтобы считать символы до и после $
bool find = false; // найден уже символ или нет
for(int x = 0; str[x]; x++) // выполняется, пока не дойдёт до последнего невидимого символа '\0', который добавляется в конец символьных массивов в C++
{
if(str[x] == '$') find = true; // найден символ $
else if(!find) _do++; // если символ не найден -- считаем символы до него
else if(find) _posle++; // если символ найден -- считаем символы после него
}
cout << "Количество символов до $ равно " << _do;
cout << ".\nКоличество символов после $ равно " << _posle << '.' << endl;
return 0;
}
#include <iostream>
using namespace std;
int main()
{
char str[] = "ist$love84p"; // массив симолов
int _do = 0, _posle = 0; // чтобы считать символы до и после $
bool find = false; // найден уже символ или нет
for(int x = 0; str[x]; x++) // выполняется, пока не дойдёт до последнего невидимого символа '\0', который добавляется в конец символьных массивов в C++
{
if(str[x] == '$') find = true; // найден символ $
else if(!find) _do++; // если символ не найден -- считаем символы до него
else if(find) _posle++; // если символ найден -- считаем символы после него
}
cout << "Количество символов до $ равно " << _do;
cout << ".\nКоличество символов после $ равно " << _posle << '.' << endl;
return 0;
}
Владимир Петров
массива нету его вводить нужно
Если массив, в котором ищем - это строка:
char s[] = "1234$567890"; // строка, в которой ищем
char *p = strchr(s, '$'); // указатель на символ '$' в строке s
cout << "до $: " << p - s << '\n'; // разность указателей есть длина
cout << "после $: " << strlen(p + 1) << '\n'; // просто длина подстроки после '$'
Если массив - это именно массив:
char s[] = {'1', '2', '3', '4', '$', '5', '6', '7', '8', '9', '0'};
char *p = strchr(s, '$'); // указатель на символ '$' в массиве s
cout << "до $: " << p - s << '\n'; // разность указателей есть длина
cout << "после $: " << sizeof(s) + (s - p) - 1 << '\n'; // кол-во элементов после '$'
Если длина массива задана как-то иначе, вместо sizeof(s) подставляем эту длину.
И никаких явных циклов и сравнений.
P.S. Ввод массива у тебя в заданиях уже был. Так что не хочешь писать сам - скопируй из ранее данных тебе ответов.
char s[] = "1234$567890"; // строка, в которой ищем
char *p = strchr(s, '$'); // указатель на символ '$' в строке s
cout << "до $: " << p - s << '\n'; // разность указателей есть длина
cout << "после $: " << strlen(p + 1) << '\n'; // просто длина подстроки после '$'
Если массив - это именно массив:
char s[] = {'1', '2', '3', '4', '$', '5', '6', '7', '8', '9', '0'};
char *p = strchr(s, '$'); // указатель на символ '$' в массиве s
cout << "до $: " << p - s << '\n'; // разность указателей есть длина
cout << "после $: " << sizeof(s) + (s - p) - 1 << '\n'; // кол-во элементов после '$'
Если длина массива задана как-то иначе, вместо sizeof(s) подставляем эту длину.
И никаких явных циклов и сравнений.
P.S. Ввод массива у тебя в заданиях уже был. Так что не хочешь писать сам - скопируй из ранее данных тебе ответов.
#include "iostream"
#include "algorithm"
int main(){
char a[]="gfuz$iUZjkuG"; // задали массив
int n=sizeof a/sizeof *a,k=std::find(a,a+n,'$')-a; // нашли длину массива и позицию символа $
std::cout<<a<<'\n'<<k<<' '<<n-k-2<<'\n';} // напечатали массив и количества символов до $ и после него
#include "algorithm"
int main(){
char a[]="gfuz$iUZjkuG"; // задали массив
int n=sizeof a/sizeof *a,k=std::find(a,a+n,'$')-a; // нашли длину массива и позицию символа $
std::cout<<a<<'\n'<<k<<' '<<n-k-2<<'\n';} // напечатали массив и количества символов до $ и после него
Похожие вопросы
- Помогите решить задачу по C++!
- Помогите решить задачу на C++.
- Помогите решить задачу на c++
- Помогите решить задачу на C++
- Помогите решить задачу на C++
- Помогите решить задачу на C++
- УМОЛЯЮ!!!!! Помогите решить задачу на C++
- Помогите решить задачу на C++
- Помогите решить задачу в C++
- Помогите решить задачу по программированию на C++