пожалуйста помогите с программами по С++
Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill
должно работать со стрленом. попробуй подключить еще stdlib.h
В SAD - все в SAD.
переставила с++ и заработало
пасибо большое за помощь. вот еще бы как-то те две задачки побороть и счастье будет полным....
За счастье бороться надо 
Будет время - посмотрю не будет - не посмотрю
а какие именно две ?

Будет время - посмотрю не будет - не посмотрю
а какие именно две ?
В SAD - все в SAD.
Вот эти...
Задача 1. Дано натуральное число k. Определить k-ю цифру последовательности, где выписаны подряд степени числа 10
Задача 2 Дана квадратная матрица размерности K<20. Найти сумму ее элементов, находящихся на диагонали, "ортогональной" главной.
Задача 1. Дано натуральное число k. Определить k-ю цифру последовательности, где выписаны подряд степени числа 10
Задача 2 Дана квадратная матрица размерности K<20. Найти сумму ее элементов, находящихся на диагонали, "ортогональной" главной.
вторая - ортоганальная диагональ - енто диагональ которая начинается справа сверху и оканчивается слева снизу отсюда имеем
когда m - целевая матрица
int sum=0;
int j=k;
for(int i=0;i<k;i++){
sum+=m[j--];
когда m - целевая матрица
int sum=0;
int j=k;
for(int i=0;i<k;i++){
sum+=m[j--];
В SAD - все в SAD.
сорри m[--j]
либо
int j=k-1;
for(int i=0;i<k;i++){
sum+=m[j];
j--;
}
либо
int j=k-1;
for(int i=0;i<k;i++){
sum+=m[j];
j--;
}
В SAD - все в SAD.
последняя - ваапще красота
смысл такой - вычитаешь из введенного числа последовательно все натуральные числа
то есть 1 2 3 и тд как только остается число меньшее чем следующее вычитаемое число то выходишь из цикла и смотришь - если единица то будет 1 если другое число - то 0
смысл такой - вычитаешь из введенного числа последовательно все натуральные числа
то есть 1 2 3 и тд как только остается число меньшее чем следующее вычитаемое число то выходишь из цикла и смотришь - если единица то будет 1 если другое число - то 0
В SAD - все в SAD.
бр-рррр первую про k-ю цифру последовательности так и не поняла
а с матрицей спасибо, получилось 

объясняю на примере
сверху послдеовательность снизу номер цифры
пусть тебе ввели 11
110100100010000100
123456789012345678
в цикле начинаешь
11-1=10-2=8-3=5-4=1<=5 => 1
пусть ввели 12
12-1=11-2=9-3=6-4=2<=5 => 0
там же так и написано
сверху послдеовательность снизу номер цифры
пусть тебе ввели 11
110100100010000100
123456789012345678
в цикле начинаешь
11-1=10-2=8-3=5-4=1<=5 => 1
пусть ввели 12
12-1=11-2=9-3=6-4=2<=5 => 0
там же так и написано

В SAD - все в SAD.
ммм.. получилось :P
теперь заморочка вот на чем
Определить, является ли введенная строка правильной записью целого шестнадцатеричного числа без знака, прога запускается, но когда ввожу строку (например 5А3) результат выдает не тот что нужно, она на каждую совпадающую букву или цифру в строке пишет да да да
теперь заморочка вот на чем
Определить, является ли введенная строка правильной записью целого шестнадцатеричного числа без знака, прога запускается, но когда ввожу строку (например 5А3) результат выдает не тот что нужно, она на каждую совпадающую букву или цифру в строке пишет да да да
Код: Выделить всё
#include <iostream>
using namespace std;
#include <stdio.h>
#include <windows.h>
#include <string.h>
void main ()
{
char str[128];
CharToOem("Введите строку",str);cout<<str;cin>>str;
int i;
for(i=0;i<strlen(str);i++)
{
if (strspn(str, "0123456789abcdefABCDEF") == strlen (str))
{ cout << " yes " << endl;}
else {cout << " no " << endl;}
} }