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

Найти первую повторяющуюся строку в массиве строк - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Конвертация строк. http://www.cyberforum.ru/cpp-beginners/thread100127.html
Существует задача преобразования текста, читаемого из файла в кодировке ANSI в кодировку ASCII, чтобы русский текст нормально отражался в программе, и наоборот, записать русский текст из программы в файл. Согласно Puporevу (... ), она возникает достаточно часто. Привожу перевод на c++ его процедур для такой конвертации (...): void AnsiToAscii(cahr *s:string) { char *p; if (s==nULL) { ...
C++ Решить прикладную задачу с помощью циклического вычислительного процесса Помогите решить...Не знаю как... Решить прикладную задачу с помощью циклического вычислительного процесса. Дано натуральное n. Вычислить: "Миниатюры" //--------------------------------------------------------------------------- #include <vcl.h> #include <iostream.h> #include <conio.h> http://www.cyberforum.ru/cpp-beginners/thread99903.html
Замена всех "не букв" на их 8-ое представление C++
Помогите с программой. Замены всех не букв во вводимой строке на их восьмеричное представление и вывода результата. есть похожая программа, там ..замена всех заглавных букв на их 8-ое представление.. #include "stdafx.h" #include <iostream> #include <string.h> #include <conio.h> using namespace std;
Лаба по созданию класса C++
Задали создать класс, где нужно сделать вот это: 4. Определить в классе селекторы и модификаторы 5. Определить указатель на экземпляр класса Могли бы вы мне пояснить, что такое селекторы и экземпляр класса и привести пример кода?
C++ Составить программу, вычисляющую сумму ряда http://www.cyberforum.ru/cpp-beginners/thread99758.html
Ужас... мозг сломан. Сил не осталось.. может кто-нибудь поможет? Составить программу, вычисляющую сумму ряда Программа должна вычислять сумму ряда для аргументов Х в диапазоне от начального значения до конечного значения с некоторым шагом, которые вводятся в диалоге с клавиатуры. Кроме того вводится максимальная погрешность E (конкретное значение можно взять ,001 или ,0001) Программа...
C++ Поток ввода и число символов Есть поток, например, cin. Как прочитать число символов, ожидающих ввода в этом потоке? unsigned int n; unsigned int N; unsigned int i; char *c; char *p; ... // какая то строка, помещающая число символов в n. Вот о ней я и спрашиваю. N=n+1; if (N>1) { подробнее

Показать сообщение отдельно
ula
0 / 0 / 0
Регистрация: 04.12.2009
Сообщений: 26
02.03.2010, 11:35  [ТС]     Найти первую повторяющуюся строку в массиве строк
Никаких претензий нет, просто преподаватель сказал выполнять это задание в виде формы:"...задание состоит из целевой функции, т.е. функции, выполняющей задание, указанное в варианте, и теста в виде функции main(). Тестовые аргументы следует передавать в виде аргументов командной строки и/или вводить по приглашению...".
7. Пример выполнения задания
Исходный текст программы с комментариями

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// Ind1.cpp : Пример выполнения задания
//
 
#include "stdafx.h"
#include <conio.h>
 
// ----------------------------------------------
// функция подсчета строк, заканчивающихся цифрой,
// в массиве строк
// ----------------------------------------------
int CalcDigitFinish(char *ar[], int sz){
// параметры:
    // ar - массив строк
    // sz - размер этого массива        
    int cd = 0; // переменная счетчик нужных строк
    for (int i=0; i<sz; i++) { // цикл по строкам массива
        char *p=ar[i]; // берём указатель на строку массива
        while (*p) p++; // и угоняем его в конец строки
        if (p!=ar[i]){  // не пуста ли строка?
            char last = *(--p); // взяли последний символ
            if (last>='0' && last <='9')  // проверяем на цифру
                cd++; // увеличиваем счетчик
        }
    }
    return cd; // возвращаем результат
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    // тестовые строки
    char *a[] = {"xcjv", "hsjdfh3", "jsd1", "", "63475", "hjdfh"};
    int sa = 6; // размер массива
    printf ("Arrays to check:\n"); // предисловие к выводу исходных строк
    for (int i=0; i<sa; i++) printf ("%d) %s\n", i+1, a[i]); // выводим строки, которые проверям
    printf("Digit ended lines count = %d\n", CalcDigitFinish(a,sa)); // сразу печатаем результат вызова ф-ции
    _getch();
    return 0;
}
Вывод на консоль
Arrays to check:
1) xcjv
2) hsjdfh3
3) jsd1
4)
5) 63475
6) hjdfh
Digit ended lines count = 3
 
Текущее время: 20:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru