Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
1

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

06.02.2010, 20:28. Показов 1973. Ответов 22
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть 3 задачки, немного не соображу как их решить. Помогите горе-программисту

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

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

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

Заранее спасибо!
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.02.2010, 20:28
Ответы с готовыми решениями:

Шахматная доска
Шахматная доска содержит 8x8 клеток. Горизонтали и вертикали обозначаются цифрами 1-8. Написать...

Шахматная доска
Есть шахматная доска (8*8). Нужно с помощью фигуры "конь" обойти все 64 клетки шахматной доски....

Шахматная доска
Заполнить двумерный массив единицами и нулями таким образом, чтобы единицы размещались так, как на...

шахматная доска
помогите написать программу, которая отображает на экране следующий рисунок шахматной доски:

22
Эксперт С++
4727 / 2548 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
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");
1
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
06.02.2010, 21:06  [ТС] 3
Спасибо! ещё 2 помогите!
1
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
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<<' ';
1
This party getting crazy!
78 / 64 / 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)
??
1
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
06.02.2010, 21:36 6
Bloodykeeper, вот то что надо заменить - чистейший Си без плюсов
Тебе просто надо заменить cout на printf
0
This party getting crazy!
78 / 64 / 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);
}
пишет ошибки.
1
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
06.02.2010, 22:04 8
C
1
printf("%d ", i);
1
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
06.02.2010, 22:16  [ТС] 9
M128K145, и вправду)) как я не додумался... а как со второй быть? помогите исправить!!!
1
Быдлокодер
512 / 298 / 85
Регистрация: 22.11.2009
Сообщений: 892
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);
}
0
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
06.02.2010, 22:28  [ТС] 11
Darky,

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

В чём может быть проблема?
1
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
06.02.2010, 23:13 12
Bloodykeeper, забавно)) Ты действительно не понял в чем дело? Может все же добавишь в мой код ввод строки, а?
0
This party getting crazy!
78 / 64 / 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);
}
1
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
07.02.2010, 11:17 14
Просто переписать 8 строку так
C++
1
int i = 0, len;
И опять же, я не вижу ввод строки
0
This party getting crazy!
78 / 64 / 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... почему?? что нужно сделать, чтобы исправить?
1
Эксперт С++
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
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) ) {
1
This party getting crazy!
78 / 64 / 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);
}
1
Эксперт С++
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
08.02.2010, 10:07 18
Я так понимаю всем просто лень думать за тебя
0
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
08.02.2010, 15:52  [ТС] 19
odip, Возможно, просто сам уже смотрю-смотрю на эту прогу, и не могу допереть в чём дело....(
1
1261 / 799 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
08.02.2010, 16:26 20
Bloodykeeper:
Может тебе другую версию программы?
0
08.02.2010, 16:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.02.2010, 16:26
Помогаю со студенческими работами здесь

С++ Шахматная доска
Помогите пожалуйста с заданием. Нужно сделать шахматную доску 16*16 и пользователь должен ввести...

Шахматная доска
Ребята, помогите! Есть код на С++, выводящий на экран шахматную доску, нужно его дополнить...

шахматная доска
Поле шахматной доски определяется парой натуральных чисел, каждое из которых не более 8:1-е число...

Шахматная доска
Даны координаты двух различных полей шахматной доски x1,x2,y1,y2(Целые числа лежащие в диапазоне от...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru