Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Хороший тест по С 
:(
    Опции темы
Step
Дата 23.1.2004, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



либо тест дибильный, либо я дебил полный..... smile.gifsmile.gifsmile.gif, точно для зубрилок


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
Alex101
Дата 23.1.2004, 19:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 891
Регистрация: 8.4.2002
Где: Москва

Репутация: нет
Всего: 10



Цитата(RAN @ 22.1.2004, 19:35)
Например, такой вопрос:

a и b где-то там уже определены
Код

b = 0;
a *=3;
switch( (a+2)%3 )
{
   case 1: b--;
   case 2: b--;
   case 3: b++;
   case 4: b++;
}


я не знаю, почему не определены переменные. Особенно a. Но, на мой взгляд, правильный ответ: "неизвестно, что будет в b".

Да нет, дело в том, что остаток от деления (a+2) на 3 будет равен 2.
Ведь до этого a присвоили значение a*3.


--------------------
С уважением, А. Фролов.
PM MAIL ICQ   Вверх
__vi
Дата 23.1.2004, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 301
Регистрация: 21.1.2004

Репутация: нет
Всего: -1



Ты пошутил и я не понял или я просто не понял?
(3n+2)%3 не всегда равно 2.
Что ты хотел сказать?
PM MAIL   Вверх
Alex101
Дата 23.1.2004, 19:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 891
Регистрация: 8.4.2002
Где: Москва

Репутация: нет
Всего: 10



Пошутил, но но код начнет выполняться со строчки b-- и делее, так как брыков нет.



--------------------
С уважением, А. Фролов.
PM MAIL ICQ   Вверх
__vi
Дата 23.1.2004, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 301
Регистрация: 21.1.2004

Репутация: нет
Всего: -1



Если а == 0 то: (a+2)%3 == 2%3 == 2 (!)
Код

#include <stdio.h>

int main( void )
{
       int n = 2%3;

       printf( "%d\n", n );

       return 0;
}


Но всё зависит от верхнего контекста (т.е. до a*=3). То что а до этого было нулём не факт, значит тут можно спорить.

PM MAIL   Вверх
LabelZero
Дата 24.1.2004, 06:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 24.1.2004
Где: СПБ

Репутация: нет
Всего: нет



гы-гы-гы =)
я ВООБЩЕ Си не учил(который натураль), С++ учил, гы, зато результат 2.39.
в общем странно вопросы задают...
PM MAIL ICQ   Вверх
RAN
Дата 24.1.2004, 07:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Экс. модератор
Сообщений: 709
Регистрация: 14.3.2003
Где: Щёлково Моск.обл.

Репутация: 5
Всего: 6



__vi, если a = 0, 1 и т.д. то всё будет верно. a должно быть неотрицательным. Если бы они написали, что a типа unsigned, то вопрос был бы безупречен. Но это не сказано. А значит в ситуации a = -1 получается

Код

a *= 3; //в a  -3

и получается, что (a+2)%3 = -1. Вот так вот. Ни один case не проходит и b = 0.
PM MAIL ICQ   Вверх
Unregistered
Дата 24.1.2004, 21:26 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата
либо тест дибильный, либо я дебил полный.....

А может и то и другое? Хотя, тест точно не дИбильный, такого слова вообще нету!
  Вверх
__vi
Дата 25.1.2004, 12:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 301
Регистрация: 21.1.2004

Репутация: нет
Всего: -1



RAN: нащёт unsigned абсолютно согласен.
PM MAIL   Вверх
Fixin
Дата 25.1.2004, 12:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ёжик
***


Профиль
Группа: Комодератор
Сообщений: 1357
Регистрация: 6.1.2004

Репутация: 2
Всего: 18



Тест точно какой-то с(т)ран(н)ый. Вопросы про то, на что в жизни внимания не обращал и чтобы товетить хоть на что-то нужно выучить книжку дословно. Я отвечал про "С", набрал 1.29 хотя пишу на нем два года и почти не ошибаюсь, по крайней мере в синтаксисе точно.
PM MAIL ICQ   Вверх
mi49.Ok
Дата 25.1.2004, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 14.12.2003
Где: Irk

Репутация: нет
Всего: 1



1.03 по С. Я не знал, что c++ и с так уж отличаются или я такой тупой.
PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0902 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.