Форум программистов, компьютерный форум CyberForum.ru

Шахматная доска и строка - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
Bloodykeeper
This party getting crazy!
 Аватар для Bloodykeeper
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
06.02.2010, 20:28     Шахматная доска и строка #1
Есть 3 задачки, немного не соображу как их решить. Помогите горе-программисту

1) Поле шахматной доски определяется парой натуральных чисел, первое из которых задаст номервертикали, а второе- номер горизонтали. Даны натуральные числа k, l, m, n. Требуется выяснить, являются ли поля (k, l) и (m, n) полямиодного цвета.

2)В последовательности введённых символов (последний '$') определить порядковый номер первой буквы R (с учётом верхнего и нижнего регистров).

3) Распечатать в порядке убывания нечётные числа из диапазона [5.. 90], кратные 3 и не кратные 5 одновременно.

Заранее спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.02.2010, 20:28     Шахматная доска и строка
Посмотрите здесь:

шахматная доска C++
шахматная доска!! C++
Шахматная доска C++
C++ шахматная доска
Шахматная доска C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
06.02.2010, 20:37     Шахматная доска и строка #2
1.
C
1
2
3
4
if(((k+l)%2==1 && (m+n)%2==1) || ((k+l)%2==0 && (m+n)%2==0))
printf("Yes");
else
printf("No");
Bloodykeeper
This party getting crazy!
 Аватар для Bloodykeeper
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
06.02.2010, 21:06  [ТС]     Шахматная доска и строка #3
Спасибо! ещё 2 помогите!
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
06.02.2010, 21:19     Шахматная доска и строка #4
2.
C++
1
2
3
4
5
6
7
8
char str[300];
int i(0), len(strlen(str));
while(str[i] != 'R' || i < len) 
    ++i;
if(i == len)
    std::cout<<"Символ R не содержится";
else
    std::cout<<"Индекс = "<<i;
Добавлено через 1 минуту
3.
C++
1
2
3
for(int i = 90; i > 5; --i)
    if(i & 1 && !(i % 3) && i % 5)
        std::cout<<i<<' ';
Bloodykeeper
This party getting crazy!
 Аватар для Bloodykeeper
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
06.02.2010, 21:22  [ТС]     Шахматная доска и строка #5
Спасибо! сейчас постараюсь переделать на Си, если не трудно, помогите (может я и справлюсь, но всё же, лишний + не помеха).

подскажите, а как можно заменить
C
1
2
3
4
len(strlen(str));
while(str[i] != 'R' || i < len) 
    ++i;
if(i == len)
??
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
06.02.2010, 21:36     Шахматная доска и строка #6
Bloodykeeper, вот то что надо заменить - чистейший Си без плюсов
Тебе просто надо заменить cout на printf
Bloodykeeper
This party getting crazy!
 Аватар для Bloodykeeper
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
06.02.2010, 21:38  [ТС]     Шахматная доска и строка #7
а как в последней задаче сделать между числами пробелы? а то они все вместе печатаются

C
1
2
3
4
5
6
7
8
#include <stdio.h>
#include <conio.h>
main() {
    int i;
for(i = 90; i > 5; --i)
    if(i & 1 && !(i % 3) && i % 5)
        printf("%d", i);
}
??

во второй задачи, переписал вот так:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <conio.h>
 
main() {
 
char str[300];
int i(0), len(strlen(str));
while(str[i] != 'R' || i < len) 
    ++i;
if(i == len)
    printf("There are no symbol R");
else
    printf("Number of R =%d",i);
}
пишет ошибки.
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
06.02.2010, 22:04     Шахматная доска и строка #8
C
1
printf("%d ", i);
Bloodykeeper
This party getting crazy!
 Аватар для Bloodykeeper
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
06.02.2010, 22:16  [ТС]     Шахматная доска и строка #9
M128K145, и вправду)) как я не додумался... а как со второй быть? помогите исправить!!!
Darky
Быдлокодер
 Аватар для Darky
507 / 294 / 45
Регистрация: 22.11.2009
Сообщений: 892
Завершенные тесты: 1
06.02.2010, 22:21     Шахматная доска и строка #10
Ну вообще, strlen вызывается с помощью
C
1
#include <string.h>
Добавлено через 2 минуты
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
int main()
{
char str[300];
int i(0), len(strlen(str));
while(str[i] != 'R' || i < len)
    ++i;
if(i == len)
    printf("Символ R не содержится");
else
    printf("Индекс - %d",i);
}
Bloodykeeper
This party getting crazy!
 Аватар для Bloodykeeper
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
06.02.2010, 22:28  [ТС]     Шахматная доска и строка #11
Darky,

неть. Уже попробовал, ругаетсо матерным языком и категорически отказывается запускать бедную прогу
А ругается это заразко на illegal index и на пропущенные знаки препинания перед const.

В чём может быть проблема?
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
06.02.2010, 23:13     Шахматная доска и строка #12
Bloodykeeper, забавно)) Ты действительно не понял в чем дело? Может все же добавишь в мой код ввод строки, а?
Bloodykeeper
This party getting crazy!
 Аватар для Bloodykeeper
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
07.02.2010, 11:02  [ТС]     Шахматная доска и строка #13
M128K145, кпц))) на сон грядущий головешка не думает я сделал вот так, но она при выполнении ругается, на len- unresolved symbol. Скажите как исправить?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
int main()
{
char str[300];
int i=0;
printf("Enter the string:\n");
len(strlen(str));
while(str[i] != 'R' || i < len)
    ++i;
if(i == len)
    printf("There are no symbol R");
else
    printf("symbol R - %d",i);
}
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
07.02.2010, 11:17     Шахматная доска и строка #14
Просто переписать 8 строку так
C++
1
int i = 0, len;
И опять же, я не вижу ввод строки
Bloodykeeper
This party getting crazy!
 Аватар для Bloodykeeper
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
07.02.2010, 12:29  [ТС]     Шахматная доска и строка #15
M128K145,
я сделал вот так
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
int main()
{
char str[300];
int i = 0, len;
printf("Enter the string:\n");
gets(str);
len=strlen(str);
while(str[i] != 'R' || i < len)
    ++i;
if(i == len)
    printf("There are no symbol R");
else
    printf("symbol R - %d",i);
}
Но при этом R всё время равняется 2216... почему?? что нужно сделать, чтобы исправить?
odip
Эксперт C++
 Аватар для odip
7225 / 3287 / 58
Регистрация: 17.06.2009
Сообщений: 14,165
07.02.2010, 13:11     Шахматная доска и строка #16
if(((k+l)%2==1 && (m+n)%2==1) || ((k+l)%2==0 && (m+n)%2==0))
printf("Yes");
else
printf("No");
Можно подсократить
C
1
if ( ((k+l)%2) ==  ((m+n)%2) ) {
Bloodykeeper
This party getting crazy!
 Аватар для Bloodykeeper
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
08.02.2010, 08:05  [ТС]     Шахматная доска и строка #17
так как исправить вывод кривого значения!?? хелп!!!

Добавлено через 1 час 51 минуту
The help is still necessary to me!

Добавлено через 2 часа 32 минуты
Помощь всё ещё требуется!!

Добавлено через 2 часа 10 минут
Вопрос ещё актуален.

Добавлено через 10 часов 43 минуты
Помощь всё ещё надо!! нужно подправить код!
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
int main()
{
char str[300];
int i = 0, len;
printf("Enter the string:\n");
gets(str);
len=strlen(str);
while(str[i] != 'R' || i < len)
    ++i;
if(i == len)
    printf("There are no symbol R");
else
    printf("symbol R - %d",i);
}
odip
Эксперт C++
 Аватар для odip
7225 / 3287 / 58
Регистрация: 17.06.2009
Сообщений: 14,165
08.02.2010, 10:07     Шахматная доска и строка #18
Я так понимаю всем просто лень думать за тебя
Bloodykeeper
This party getting crazy!
 Аватар для Bloodykeeper
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
08.02.2010, 15:52  [ТС]     Шахматная доска и строка #19
odip, Возможно, просто сам уже смотрю-смотрю на эту прогу, и не могу допереть в чём дело....(
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.02.2010, 16:26     Шахматная доска и строка
Еще ссылки по теме:

C++ Шахматная доска
C++ Шахматная доска
C++ Шахматная доска

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

Или воспользуйтесь поиском по форуму:
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
08.02.2010, 16:26     Шахматная доска и строка #20
Bloodykeeper:
Может тебе другую версию программы?
Yandex
Объявления
08.02.2010, 16:26     Шахматная доска и строка
Ответ Создать тему
Опции темы

Текущее время: 21:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru