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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 39, средняя оценка - 4.77
romster
5 / 3 / 1
Регистрация: 25.11.2011
Сообщений: 78
#1

Сравнить два введённых слова - C++

25.11.2011, 20:00. Просмотров 6378. Ответов 29
Метки нет (Все метки)

Всем привет!! Помогите решить задачку: ввести два слова и сравнить их.
Вот я почти решил, надо как-то внедрить проверку длины слова (может strlen?)
Атто у меня если введёшь dos и dosa, то считает правильным))
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include<string>
 
using namespace std;
 
int main()
{
char a[50],b[50];
int i;
cout<<"Vvedite slovo N1 i N2\n";
cin>>a>>b;
for(i=0;i<1;i++)
if (a[i]==b[i])
cout<<"da";
else cout<<"net";
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2011, 20:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сравнить два введённых слова (C++):

Проверить, совпадают ли два введённых слова - C++
1. Проверить, совпадают ли два введённых слова (есть решённая) 2. Вставить вместо &quot;т&quot;, стоячей на нечётном месте букву &quot;у&quot;. Помогите со...

Как сравнить два слова - C++
как сравнить два слова в массиве структур ? // masS.stud=go_23 // // masS.stud=go_23 // ... if(masS.stud==masS.stud) //...

Проверить, что из введённых чисел x, y, z только два числа равны между собой - C++
Не использую оператора if, присвоить переменной значение t значение 0, если из введённых чисел x,y,z только два числа равны между собой, и...

Сравнить два массива - C++
Подскажите пожалуйста как решить задачу: Нужно сравнить два массива, проверить все элементы на совпадение и если они совпадают то вывести...

Сравнить два контейнера set - C++
Всем добрый вечер . Как сравнить два контейнера set? Допустим: set &lt;int&gt; m1; set &lt;int&gt; m2; for( int i = 0; i &lt; 5;...

Сравнить два кода с условием - C++
if(a == 1) b = 2; else b = 3; c = 2; if(a== 1) { b = 2 } else { b = 3 } c = 2; Тоже самое произойдет? Или в 1 варианте...

29
romster
5 / 3 / 1
Регистрация: 25.11.2011
Сообщений: 78
25.11.2011, 21:08  [ТС] #16
Цитата Сообщение от lemegeton Посмотреть сообщение
А по-аналогии сделать?
Буду тока рад
0
go
Эксперт С++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
25.11.2011, 21:35 #17
Цитата Сообщение от romster Посмотреть сообщение
А почему вот strcmp не объявлена говорит? #include <string> есть
C++
1
#include <string.h>
1
Ринат
0 / 0 / 0
Регистрация: 29.05.2014
Сообщений: 81
31.05.2014, 19:06 #18
Цитата Сообщение от absokolov Посмотреть сообщение
if (strncmp(&a, &b, sizeof(a)) == 0)
а что означает (&a,&b,sizeof(a))==0)??ну сравнение к 0 это понятно а остальное?
0
Croessmah
Ушел
Эксперт CЭксперт С++
13557 / 7707 / 872
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
31.05.2014, 19:08 #19
sizeof(a) - размер массива a в байтах
0
Ринат
0 / 0 / 0
Регистрация: 29.05.2014
Сообщений: 81
31.05.2014, 19:08 #20
А еще даже хотел бы конкретезировать свой вопрос, как поставить условие по алфавиту? ну к примеру "арбуз был первый а баран второй"??
0
Croessmah
Ушел
Эксперт CЭксперт С++
13557 / 7707 / 872
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
31.05.2014, 19:10 #21
Цитата Сообщение от Ринат Посмотреть сообщение
"арбуз был первый а баран второй"??
нет, просто третьим козел шел

уточните что Вам нужно, а то не понятно ничего.
0
zss
Модератор
Эксперт С++
6575 / 6137 / 2021
Регистрация: 18.12.2011
Сообщений: 15,993
Завершенные тесты: 1
31.05.2014, 19:14 #22
C++
1
strncmp(a, b, sizeof(a))==0
истина, если sizeof(a) символов строки a совпадают с sizeof(a) символов строки b
Несколько странное сравнение. Я бы написал
C++
1
strncmp(a, b, strlen(a))==0
C++
1
2
3
4
5
char a[]="Арбуз",char b[]="Баран";
if(strcmp(a,b)==1)
   cout<<a<<" первый,"<<b<<" второй"<<endl;
else
   cout<<b<<" первый,"<<a<<" второй"<<endl;
0
Ринат
0 / 0 / 0
Регистрация: 29.05.2014
Сообщений: 81
31.05.2014, 19:14 #23
Вот к примеру условие:
i
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
nclude <iostream>
include <string>
using namespace std;
 
Int main()
{
char arbuz[100];
char baran[100];
cout<<"Vvedite arbuz"<<endl;
cin>>arbuz;
cout<<"Vvedite baran"<<endl;
cin>>baran;
 
if(arbuz>baran){
cout<<arbuz<<endl;
}
else{
cout<<baran<<endl;
}
return(0);
}
0
zss
Модератор
Эксперт С++
6575 / 6137 / 2021
Регистрация: 18.12.2011
Сообщений: 15,993
Завершенные тесты: 1
31.05.2014, 19:16 #24
Цитата Сообщение от Ринат Посмотреть сообщение
if(arbuz>baran){
надо
C++
1
if(strcmp(arbuz,baran)==1)
0
Croessmah
Ушел
Эксперт CЭксперт С++
13557 / 7707 / 872
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
31.05.2014, 19:17 #25
Цитата Сообщение от zss Посмотреть сообщение
надо
корректней сравнивать с нулем, потому что никто не гарантирует возврат единицы. Гарантируется только возврат нуля, значение больше или меньше нуля.

7.21.4.2 The strcmp function
Synopsis
C
1
2
#include <string.h>
int strcmp(const char *s1, const char *s2);
Description
The strcmp function compares the string pointed to by s1 to the string pointed to by s2.
Returns
The strcmp function returns an integer greater than, equal to, or less than zero, accordingly as the string pointed to by s1 is greater than, equal to, or less than the string pointed to by s2.
1
Ринат
0 / 0 / 0
Регистрация: 29.05.2014
Сообщений: 81
31.05.2014, 19:24 #26
Те, получается по этому коду я вводу например имя Артем. потом Ввожу Иван, на выводе будет выводится Артем
, если же буду вводить Иван и колян будет выводится Иван.

Добавлено через 7 минут
strcmp к какой библиотеке относится?
0
Croessmah
Ушел
Эксперт CЭксперт С++
13557 / 7707 / 872
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
31.05.2014, 19:26 #27
Цитата Сообщение от Ринат Посмотреть сообщение
strcmp к какой библиотеке относится?
к стандартной библиотеке C
Объявление тут: string.h (для c++ cstring)
0
zss
Модератор
Эксперт С++
6575 / 6137 / 2021
Регистрация: 18.12.2011
Сообщений: 15,993
Завершенные тесты: 1
31.05.2014, 19:28 #28
Цитата Сообщение от Ринат Посмотреть сообщение
strcmp к какой библиотеке относится?
Достаточно
C++
1
#include <string.h>
0
Ринат
0 / 0 / 0
Регистрация: 29.05.2014
Сообщений: 81
31.05.2014, 19:50 #29
Все заработало спс) интересный эксперимент-)

Добавлено через 22 минуты
Цитата Сообщение от zss Посмотреть сообщение
if(strcmp(arbuz,baran)==1)
хотел уточнить, тут благодаря команде strcmp арьуз и баран сравниваются с 1цей? в чём сама фишка? и в чем будет отличия 1цы от 0ля?
0
ник нэйм
3 / 3 / 1
Регистрация: 10.11.2013
Сообщений: 175
31.05.2014, 20:20 #30
C++
1
2
3
4
5
string a;
string b;
if(a==b)
{cout<<" совпало ";
}
0
31.05.2014, 20:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.05.2014, 20:20
Привет! Вот еще темы с ответами:

Сравнить два подмножества в матрице - C++
подскажите пжл как сравнить 2 подмножества в матрице

Сравнить два любых файла на С++ - C++
В общем задача такая: Надо сравнить два любых файла(ехе, doc, pdf) - и вывести сообщение: а) если они различаются - то место(номер)...

Сравнить логически два массива - C++
Сравнить , используя логическое или(||) два одномерных массива (А и В) и записать результат в массив С Массивы создал , но не знаю как...

Как сравнить два массива - C++
Здравствуйте форумчане! Помогите пожалуйста, скажите как сравнить два массива побитово и побайтово. В инете ни чего не могу найти((


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

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

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