Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

помогите с типовым VC

17K
25 декабря 2006 года
vanyavl
23 / / 25.12.2006
Если кому не сложно, помогите пожалуйста. Все программы консольные.
1. Назовем допустимым преобразованием матрицы перестановку двух строк и двух столбцов. Дана действительная матрица порядка n. С помощью допустимых преобразований добиться того, чтобы один из элементов(наибольший по модулю) распологался в левом верхнем углу матрицы.
ps Задача вроде и не сложная, но сделать не получается. Я сделал ввод матрицы и поиск максимального значения.

2. "Угадай число". Один из играющих загадывает число от 1 до N, а другой пытается отгадать его за m вопросов вида: "Верно ли, что задуманное число больше такого-то числа?". Написатьпрограмму, играющую за отгадчика.
ps Эту программу я почти закончил, но интересно было б посмотреть на вашу реализацию

3. Даны действительные числа а1,..., аn. Получить квадратную матрицу порядка n:
a1 a2 a3 ...a(n-2) a(n-1) an
a2 a3 a4 ...a(n-1) an a1
a3 a4 a5 ...an a1 a2
................................................
an a1 a2 ...a(n-3) a(n-2) a(n-1)

ps тут идет просто смещение на 1 я так понял, если не сложно помогите с кодом.


4. Сведения о произведениях живописи состоят из фамилии художника, жанра и названия. Дан файл f, содержащий сведения о нескольких произведениях живописи. Найти все портреты, написанные в 19 столетии, и записать их в файл g.
ps Работа с файлами это темный лес для меня, помогите пожалуйста, и в коде напишите коментарии, нужно понять тему. :( :confused: :(
622
25 декабря 2006 года
nilbog
507 / / 19.12.2006
Цитата: vanyavl

ps Задача вроде и не сложная, но сделать не получается. Я сделал ввод матрицы и поиск максимального значения.


ну если это есть то можно еще описать перестановку столбца(строки) матрицы (просто поэлементо)
а потом по алгоритму
ищем наибольший (попутно запоминаем его коорд)
меняем 1 и запомненный номер строки
меняем 1 и запомненный номер столбца

242
25 декабря 2006 года
Оlga
2.2K / / 04.02.2006
2)
http://www.distedu.ru/mirror/_math/algolist.manual.ru/misc/bullcow.php
я бы реализовала бы эту прогу через бинарный поиск.
17K
26 декабря 2006 года
vanyavl
23 / / 25.12.2006
Цитата: nilbog
ну если это есть то можно еще описать перестановку столбца(строки) матрицы (просто поэлементо)
а потом по алгоритму
ищем наибольший (попутно запоминаем его коорд)
меняем 1 и запомненный номер строки
меняем 1 и запомненный номер столбца



А если у меня матрица(двумерный масив), то кака его разбить на 2 одномерных что б потом можно было поменять??

355
26 декабря 2006 года
<SCORP>
786 / / 21.10.2006
не надо разбивать на два одномерных. просто меняй элементы поодному. простым обменом переменных.
17K
26 декабря 2006 года
vanyavl
23 / / 25.12.2006
как, я что то не особо въежаю, мне столбцы и строки переставить нада, можете код примерный накидать перестановки?
242
26 декабря 2006 года
Оlga
2.2K / / 04.02.2006
3)
Код:
#include <iostream>
#define N 5
void main(void)
{
 int arr[N] = {1, 2, 3, 4, 5};
 int mat[N][N], i, j, k;
 for(i = 0; i < N; i++)
  for(j = 0, k = i; j < N; j++)
  {
   mat[j] = arr[k++];
   if(k == N)
    k = 0;
  }
 for(i = 0; i < N; i++)
 {
  for(j = 0; j < N; j++)
   std::cout << mat[j] << '\t';
  std::cout << std::endl;
 }
 
 
}
17K
26 декабря 2006 года
vanyavl
23 / / 25.12.2006
Оля, огромное тебе спасибо, если будет время посмотри пожалуйста 4 задачу(
242
26 декабря 2006 года
Оlga
2.2K / / 04.02.2006
1)
данная функция получает как параметр двумерный массив, и индексы максимального элемента(max_i строка, max_j столбец), ну и меняет если нужно столбцы и строки так, чтобы макс. элемент оказался в верхнем левом углу. код не проверяла, но думаю работает.
Код:
void change(int mat[N][M], int max_i, int max_j)
{
    int j;
    if(max_i != 0)
        for(j = 0; j < M; j++)
        {
            int temp = mat[max_i][j];
            mat[max_i][j] = mat[0][j];
            mat[0][j] = temp;
        }
    if(max_j != 0)
        for(j = 0; j < N; j++)
        {
            int temp = mat[j][max_j];
            mat[j][max_j] = mat[j][0];
            mat[j][0] = temp;
        }
 
}
17K
04 января 2007 года
vanyavl
23 / / 25.12.2006
Сведения о произведениях живописи состоят из фамилии художника, жанра и названия. Дан файл f, содержащий сведения о нескольких произведениях живописи. Найти все портреты, написанные в 19 столетии, и записать их в файл g.
ps Оля особая просьба помоги хотя б ты, я буду очень признателен, без тебя я не смогу((, я пытался разобраться неособо получается, помоги очень прошу сделай ее, мы пишем в консоле, очень проу 5 числа последний срок, помогите пожалуйста люди добрые((
242
04 января 2007 года
Оlga
2.2K / / 04.02.2006
Цитата:
я пытался разобраться


и где попытки?

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог