Функции, строки, матрицы(((

Ответить
Ronin01
Сообщения: 3
Зарегистрирован: 29 дек 2009, 00:38

Задачи вроде легкие, когда язык знаешь, а когда не знаешь - просто китайская грамота(((( Нужна помощь - буду очень благодарен (пополню счет номера вашего телефона)!!!!!!!
Задача 1
Написать и протестировать функцию, которая "переворачивает" строку, передаваемую ей в качестве параметра.
Задача 2
Написать и протестировать функцию, подсчитывающую количество минимальных элементов в целочисленной матрице.
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Пройтись до середины строки в цикле, и i-й символ и n-i - й поменять местами (например, buf=s; s=s[n-i]; s[n-i]=buf ;)
Пройти два раза по матрице: с первого раза найти минимум (в принципе, можно рассматривать эту матрицу как одномерный массив, в памяти все равно она именно так и лежит, если уж работаем напрямую с указателями), а со второго - проверить каждый элемент, и если он совпадает с минимумом, увеличить счетчик на 1. Нахождение минимума в этом форуме обсуждалось много раз.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Danike
Сообщения: 14
Зарегистрирован: 18 фев 2010, 21:13

Напишите программу с использованием функций, которая подсчитывает, сколько раз определенный символ появляется в заданной строке. Надо использовать в программе С-style строки (без использования библиотеки string) длиной не более 20 символов. Протестировать 2 строки.
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Пройти по всей строке, проверить каждый символ, если совпадает с заданным - увеличить счетчик на 1.
Скоро про "как сложить два числа" будут спрашивать :(
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Danike
Сообщения: 14
Зарегистрирован: 18 фев 2010, 21:13

Элемент матрицы называется локальным минимумом, если он строго меньше всех имеющихся у него соседей. Надо подсчитать кол-во локальных минимумов заданной матрицы размером 10 на 10. Нужно найти сумму модулей элементов, расположенных выше главной диагонали.

Заранее благодарю!
Аватара пользователя
rrrFer
Сообщения: 237
Зарегистрирован: 07 сен 2008, 14:15
Контактная информация:

Danike сам пробовал решить?
Приглашаю на свой блог о программировании: pro-prof.com
Danike
Сообщения: 14
Зарегистрирован: 18 фев 2010, 21:13

Если бы понимал, то сам решил бы! Задачи задают, а я на пары не хожу! Работаю)
Himka
Сообщения: 3
Зарегистрирован: 09 мар 2010, 13:52

Danike писал(а):Если бы понимал, то сам решил бы! Задачи задают, а я на пары не хожу! Работаю)
Первая программа

Код: Выделить всё

#include <iostream.h>
char* overturn(char []);


int main(int argc, char* argv[])
{char S[100];
 cout<<"Stroka:"<<endl;
 cin.getline(S,100);
 overturn(S);
 cout<<S<<endl;
 return 0;
}
char* overturn(char s[])
{int k, d, i=0;
 char b;

 while (s[i]!='\0')
    i++;
 d=i;
 k=i/2;
 for(i=0; i<k; i++)
 {b=s[i];
  s[i]=s[d-i-1];
  s[d-i-1]=b;
 }
 return &s[0];

}

Danike
Сообщения: 14
Зарегистрирован: 18 фев 2010, 21:13

Благодарю)))
Ответить