题目一:利用wx:if 以及wx:for数据绑定来实现输出乘法口诀表的编程
乘法口诀表
步骤一:打开微信小程序软件,在index.wxml输入代码,代码如下:
<!--index.wxml-->
<view class='con'>
<view wx:for="{{[1,2,3,4,5,6,7,8,9]}}" wx:for-item="i"><!--对应行-->
<view class='inline' wx:for="{{[1,2,3,4,5,6,7,8,9]}}" wx:for-item="j"><!--对应列-->
<view wx:if="{{j<=i}}">
{{i}}×{{j}}={{i*j}}
</view>
</view>
</view>
</view>
步骤二:在index.scss输入以下代码:
/** index.scss **/
.con {
font-size: 14px;
/** 设置字体大小 **/
margin: 10px;
/** 设置外边距 **/
}
.inline {
display: inline-block;
/** 设置布局,一行显示,**/
width: 65px;
/** 设置宽度 block的**/
}
步骤三:在index.json输入以下代码:
{
"navigationBarBackgroundColor": "#000000",
"navigationBarTitleText": "九九乘法表(DaZ)",
"navigationBarTextStyle": "white",
"backgroundTextStyle": "dark"
}
运行结果如下:
第二题:编写程序,在Console控制台输出水仙花数(水仙花数指一个3位数的各位上的数字的3次幂之和等于它本身。)
步骤一:在index.ts输入以下代码:
// index.ts
Page({
data: {
result: ''
},
inputChange(e) {
this.setData({
number: e.detail.value
})
},
checkNumber() {
const number = this.data.number;
if (number.length !== 3) {
this.setData({
result: '请输入一个三位数'
})
return;
}
const digit1 = parseInt(number.charAt(0));
const digit2 = parseInt(number.charAt(1));
const digit3 = parseInt(number.charAt(2));
const sum = Math.pow(digit1, 3) + Math.pow(digit2, 3) + Math.pow(digit3, 3);
if (sum === parseInt(number)) {
this.setData({
result: '是水仙花数'
})
} else {
this.setData({
result: '不是水仙花数'
})
}
}
})
步骤二:在index.json输入以下代码:
{
"navigationBarBackgroundColor": "#000000",
"navigationBarTitleText": "水仙花(DaZ)",
"navigationBarTextStyle": "white",
"backgroundTextStyle": "dark"
}
步骤三: 在index.wxml输入以下代码:
<view class="container">
<view class="title">水仙花数判断</view>
<input class="input" placeholder="请输入一个三位数" bindinput="inputChange" />
<button class="button" bindtap="checkNumber">验证</button>
<view class="result">{{result}}</view>
</view>
最终运行结果如图所示:
题目三:编写程序,在页面中输出水仙花数,如图所示。
步骤一:在index.ts输入以下代码:
Page({
data:{
narcissisticNumbers: []
},
onLoad: function () {
this.findNarcissisticNumbers();
},
findNarcissisticNumbers: function (){
const numbers =[];
for (let i=100;i<1000;i++){
const a = Math.floor(i / 100);
const b = Math.floor((i % 100) / 10); const c=i% 10;
if (a ** 3 + b** 3 +c**3===i){
numbers.push(i);}}
this.setData({
narcissisticNumbers: numbers});
}
});
步骤二:在index.json输入以下代码:
{
"navigationBarBackgroundColor": "#000000",
"navigationBarTitleText": "水仙花数总共有(Daz)",
"navigationBarTextStyle": "white",
"backgroundTextStyle": "dark"
}
步骤三: 在index.wxml输入以下代码:
<view class="container">
<view class="narcissistic-numbers">
<text wx:for="{{narcissisticNumbers}}" wx:key="*this">{{item}}</text></view>
</view>
最终运行结果如图所示:
第四题:编写程序,在页面中输出菱形图案。如图所示:
步骤一:在index.ts输入以下代码:
Page({
data: {
diamondArray: [' * ', ' *** ', ' ***** ', '*******', ' ***** ', ' *** ', ' * ']
}
})
步骤二:在index.scss输入以下代码:
.diamond {
display: flex;
flex-direction: column;
align-items: center;
}
.diamond-item {
font-size: 20px;
margin-bottom: 10px;
}
步骤三: 在index.wxml输入以下代码:
<view class="diamond">
<block wx:for="{{diamondArray}}" wx:for-item="item" wx:for-index="index">
<text class="diamond-item">{{item}}</text>
</block>
</view>
最终运行结果如图所示:
本期第二章微信小程序学习到此结束!!!